1
私は複数のテーブルに主キーを参照して値を取得しようとしているが、result.Hereを取得できませんが、テーブル複数の参照は
濃度テーブル
**de_id density color**
1 21 red
2 22 blue
3 23 green
4 24 yellow
5 25 orange
サイズです表
**si_id length breadth**
1 21 41
2 22 42
3 23 43
4 24 44
5 25 45
Order_de表
**or_id density color length breadth**
1 1 2 3 4
2 4 3 2 1
私が動作するようにしようとしているクエリが
SELECT density.density,density.color,size.length,size.breadth,order_de.or_id from
density,size,order_de WHERE order_de.density=density.de_id and
order_de.color=density.de_id and order_de.length=size.si_id and
order_de.breadth=size.si_id order by order_de.or_id asc
は、所望の結果が
density color length breadth or_id
21 blue 23 44 1
24 green 22 41 2
あるべきである。しかし、クエリは何も取得しません。 誰でも助けることができますか?
なぜこのスキーマは私にとって意味がないのですか?それは一般的ですか? – Nishant
@Nishant:一見無関係な属性(密度、色)を同じテーブル、特に同じIDに格納することは、ほとんど意味がありませんでした。 –
@Joe Stefanelliそれは密度と色の化学物質のテーブルかもしれません。しかし、データが抽出される必要がある方法は私の頭を回転させる。彼は一つのテーブルの属性を二つの行にしたい。密度21は赤ではなく、色の青は値21の密度と同じではありません。私は考えています:1つの行は1つの項目を表し、FKは単なるポインタです。なぜ属性を混ぜたいのですか? – Nishant