私はデータベースとmysqlに不慣れです。私が直面している問題が何であるかを正確に判断することさえ困難であり、関連するグーグル検索が何であるかを本当に知りません。ですから、これが驚くほど遅れた質問であるなら、私を許してください。私は2つのテーブルtabs
とを持っていcats
ます。
tabs
このようなものです:
name | order
tab1 | 3
tab2 | 0
tab3 | 1
tab4 | 2
cats
このようなものです:
name | tab_name
cat1 | tab3
cat2 | tab3
cat3 | tab1
cat4 | tab1
cat5 | tab1
私はそれが1対多の関係タブ対猫だと思います。私の質問は、それぞれが関連するすべての猫を含む個別のタブ名のみを返すクエリをどのように構成できるかということです。私はすべての猫と多くの重複したタブで結果を得ることができます。または、個別のタブしか取得できませんが、タブごとに1匹の猫しか取得できません。たぶん、PHPコードで重複するタブをテストする必要がありますか?または、タブをクエリしてから、各タブのすべての猫をクエリしますか?もっと直接的な方法が必要なようです。私は現在このクエリを使用しています:
SELECT t.name AS tab, c.name AS cat FROM tabs t
LEFT JOIN categories c
ON t.name=c.tab_name
ORDER BY t.order;