私はこのテーブルを持っています。このMySQLクエリで何が問題になっていますか
id name parents
1 Apparel
46 Apparel 1
47 Child Apparel 1,46
49 Child Apparel 2 46,1
このクエリを試してみましたが正常に動作しました。
SELECT * FROM categories WHERE 1 IN (parents)
id name parents
46 Apparel 1
47 Child Apparel 1,46
なぜこのクエリが2ではなく1つのレコードを表示するのですか?
SELECT * FROM categories WHERE 46 IN (parents)
id name parents
49 Child Apparel 2 46,1
私には最初のクエリが結果の3行を返しているようです。それはまったく何ですか?多対多関係のようなもの?両方のクエリが同じように機能すると、指定された番号から親が始まる行が返されます – teran
デザインはFirst Normal Formに違反し、可能であれば修正する必要がありますhttp://en.wikipedia.org/wiki/First_normal_form – heikkim
@teranあなたは正しいです。 – Neutralizer