2009-05-17 6 views
0

結合テーブルに不足している組み合わせを識別する方法はありますか?例えば:Mysql DB内の不足している一致を特定する

は、任意の特定の食品天気を識別することができますスリー癆

動物

食品

animals_foodは、動物、またはその逆に関連付けられていませんか?

あなたは左を使用することができます

答えて

3

参加:

SELECT animals.id FROM animals LEFT JOIN animals_food ON animals.id = animals_food.animals_id WHERE animals_food.food_id IS NULL; 

left joinは、結合条件は、右の表(animals_food)から任意の一致する行が見つからない場合であっても、左の表からすべての行(動物)が含まれています。一致が見つからない場合、右側の表の列はNULLに置き換えられます。

クエリのWHERE条件では、一致する行がすべて削除され、結果の左テーブルから孤立した行のみが残ります。

+0

私は他の人がそれをするのを見るととても簡単です。乾杯。 – gargantuan

関連する問題