は私がタイトルに苦労しますが、私が説明しましょう:Parent
とChild
:選択両親
はのは、私は2つのデータ構造を持っているとしましょう。私の(Scala)コードでは、各Parent
インスタンスはChild
のリストを持っています。データベースには私はParent
とChild
の2つのテーブルがあります。 Child
テーブルの各エントリには、Parent
を指す値parentId
があります。
Parent
表:Child
のid int型
表:Child
IDのリストを指定したid int型、PARENTID int型(外部キーparent.id)
、私は(そこに缶の各Parent
を選択します何もない、1つ、または多くの)子供たちがいます。誰かが質問に私を助けることができますか?
UPDATE:
私の例私のユースケースをカバーしていない - 申し訳ありません。別のフィールドを追加する必要がありますChild
:interestingThing
としましょう。
CREATE TABLE Parent (
id INT PRIMARY KEY
);
CREATE TABLE Child (
id INT PRIMARY KEY,
interestingThing INT,
parentId INT,
FOREIGN KEY (parentId) REFERENCES Parent (id)
);
私が必要とするのは、面白いもののリストを持つ子供を持つ両親を見つけることです。このデータを考える:
INSERT INTO Parent VALUES (1);
INSERT INTO Parent VALUES (2);
INSERT INTO Child VALUES (1, 42, 1);
INSERT INTO Child VALUES (2, 43, 1);
INSERT INTO Child VALUES (3, 44, 1);
INSERT INTO Child VALUES (4, 8, 2);
INSERT INTO Child VALUES (5, 9, 2);
INSERT INTO Child VALUES (6, 10, 2);
INSERT INTO Child VALUES (7, 8, 1);
私が働いてこれらの例を取得するクエリをしたい:面白いこと(42、43)が与えられ
- 、私はIDが1 を持つ親を見つけたいです
- 興味深いことに(43,44)、私はid 1の親を見つけたいと思っています。
- 興味深い事柄(8)が与えられれば、id 1の親とid 2の親を見つけたいと思います。
- estingもの(8、10)が、私は2
いくつかのサンプル・テーブル・データを追加し、予想結果 - 書式付きテキスト現在のクエリの試行も表示してください。また、使用しているdbmsにタグを付けます。 – jarlh
ありがとうございます。しましょう。 – L42