0

正しい用語を使用しているかどうかわかりません。

SELECT movies.*, actors.`First Name`, actors.`Last Name`
From movies
Inner Join actors on movies.`actor1` Where movies.`actor1` = actors.`indexActors`;
#Inner Join actors on movies.`actor2` Where movies.`actor2` = actors.`indexActors`;

2行目はコメントアウトしており、それぞれが個別に機能し、それらをどのように組み合わせるか疑問に思っています。

次に、クエリを実行すると、結果が得られます。

ID  Title                   Runtime Rating  Actor1  Actor2  First Name Last Name
1   Se7en                   127     R       1       2       Morgan     Freeman
2   Bruce Almighty          101     PG-13   1       3       Morgan     Freeman
3   Mr. Popper's Penguins   94      PG      3       4       Jim        Carrey
4   Superbad                113     R       4       5       Emma       Stone
5   Crazy, Stupid, Love.    118     PG-13   4       Null    Emma       Stone

2 番目の結合の結果を一番右の列に追加する方法はありますか? また、First Name と Last Name の文字列/VARCHAR を組み合わせて、その値を対応する Actor フィールドの下に表示することは可能ですか? (別名、行 1 の Actor 1 の下のフィールドは、「1」ではなく「Morgan Freeman」になります)

ありがとう。

4

1 に答える 1

0

あなたのSQLは有効ではありませんが、異なるエイリアスで同じテーブルに2回参加することで目標を達成できます。こういうこと

select blah blah blah
from table1 t1 join table2 t2 on t1.field1 = t2.field1
join table2 t2_again on t1.field1 = t2_again.field2
etc

姓名を 1 つのフィールドに結合する限り、ほとんどのデータベースには文字列を連結する方法がありますが、それらはすべて同じではありません。db エンジンを指定する必要があります。

于 2013-09-30T23:47:10.430 に答える