テーブルproducts
とテーブルがあり、categories
どちらもオプションでimages
テーブルに関連レコードを含めることができます。
images.fk
の値でまたは1
を指す可能性があるため、列を追加しました。categories.id
products.id
images.related_to
使用するカテゴリとその画像を取得したい場合
WHERE categories.id = images.fk AND images.related_to = 'categories'
しかし、明らかに今、カテゴリに画像がない場合、クエリはWHERE images.related_to = 'categories'
.
最初にクエリを実行してカテゴリに画像があるかどうかを確認することでこれを解決できますが、それは良い解決策とは思えません。
images.fk
固有の値が含まれていないのは悪い設計と見なされますか? categories.images
とproducts.images
テーブルを分ける必要がありますか? users
では、 、shops
、 の画像もある場合はどうなりsuppliers
ますか?