world! MySQLの上の教科書からMySQL:CROSS JOIN予期しない動作
パートは私が読んで:
は「あなたがCROSS JOIN
を使用して2つのテーブルを結合すると仮定し、結果セットは、結果セットの各行は列の組み合わせであり、両方のテーブルからすべての行が含まれます。 2番目のテーブルに行がある最初のテーブルこの状況は、結合されたテーブル間に関係がない場合に発生します。
私は右の上の手段を理解するのであれば:テーブルは関係CROSS JOIN
を持っている場合table_two
から各行に0からそれぞれの行を結合しないであろう。
しかし、私のテストテーブルには関係(外部キー)があります。
table_one
にはユーザーデータがあり、table_two
には注文データがあります。 table_two
から
user_id
がtable_one
しかしSELECT * FROM table_one CROSS JOIN table_two
からid
に関連しているが、両方のテーブルからそれぞれの行を結合し続けます。どうして?
ありがとうございました!