2016-08-26 13 views
0

私は親の子関係として他のレシピに付ける必要があるmysqlデータベース(ウェブサイト用)のレシピを持っています。複数の親レシピを持つことができるようにするには、1つのレシピが必要です。当初、私はrecipesテーブルにparent_idカラムを持つことができたと思っていましたが、レシピに複数の親がある場合は動作しません。私は、parent_idとchild_idが一致するルックアップテーブルを作成する必要があると考えましたが、親と子の両方がレシピであるため、selectを実行するとどのクエリが親であり、どのクエリが子であるかを区別する方法ステートメント?これは意味がありますか?同じタイプの複数の親を持つMysqlの子ども

+0

何もビューのスキーマポイントから私をおびえさせるません使用することができます。実行中に計画しているクエリの種類について説明できますか? –

+0

レシピには複数の親と複数の子供がいますか? – Strawberry

+0

私はこの部分を最初に理解してから、一度に1つずつ作成する必要があるため、範囲全体では必ずしも正確ではありません。次のステップは、私がインデントされたファッション・アレイ( 'Chicken Salad')のすべてのレシピをリストすることです。 –

答えて

0

私は牽引テーブルを使用します。recipes(ID, ...)connections(pID, cID)

すべてのレシピはIDを持っているとconnectionsの内側には、親と子の接続を保存します。

recipesは、あなたがこの

SELECT * FROM recipes JOIN connections ON recipes.ID = connections.cID WHERE connections.pID = 0 

を使用することができますID = 0でSoupのすべての子のレシピを照会するには、この

(0, 2) 
(1, 2) 

ようになります。この

(0, Soup) 
(1, Cookie) 
(2, Cookiesoup) 

connectionsのようになります。すべての親を照会するにはrec Cookiesoup 2 = IDとののIPEはあなたが言及したこの

SELECT * FROM recipes JOIN connections ON recipes.ID = connections.pID WHERE connections.cID = 2 
+0

ああ、それは意味があります、ありがとうございます8) –

関連する問題