0

私は次のような3つのテーブルを持っています:

表1:

|A|B|C|D|

表2:

|A|E|F|G|

表3:

|G|H|

結果に必要なものは次のとおりです。

|A|B|C|D|H|

table1最初に、すべての行とその行table2の列からG、条件を満たす最初の2つのテーブルのみをチェックします。table1.A = table2.A

何かのようなもの:

SELECT `table1`.*,`table2`.`G` FROM `table1` INNER JOIN `table2` WHERE `table1`.`A`=`table2`.`A`

私の問題は、古い条件を満たすキー値のようなものを使用することHから列を取得することです。私の質問が少し明確になることを願っています..誰かが私を助けることができますか?ありがとう!table3G

4

4 に答える 4

2
SELECT `table1`.*,`table2`.`G`,`table3`.`H`
FROM `table1` 
INNER JOIN `table2` ON `table1`.`A`=`table2`.`A`
INNER JOIN `table3` ON `table2`.`G`=`table3`.`G`
于 2012-07-18T12:44:27.133 に答える
0

これを試して:

SELECT
  `t1`.*,
  `t2`.`G`,
  `t3`.`H`
FROM
  `table1` AS `t1`
INNER JOIN
  `table2` AS `t2`
  ON `t1`.`id` = `t2`.`t1_id`
INNER JOIN
  `table3` AS `t3`
  ON `t1`.`id` = `t2`.`t2_id` (or join with table 2 I dont know)
WHERE
  `t1`.`A`=`t2`.`A`
于 2012-07-18T12:46:39.593 に答える
0

これは、暗黙的な内部結合を使用して行う最も簡単な方法です。

SELECT T1.A, T1.B, T1.C, T1.D, T3.H 
FROM `table1` T1, `table2` T2, `table3` T3 
WHERE T1.A = T2.A AND T2.G = T3.G
于 2012-07-18T12:45:20.680 に答える
0

table1.A = table2.A AND table2.G = table3.Gであるtable1、table2、table3からtable1.A、table1.B、table1.C、table1.D、table3.Hを選択します。

于 2012-07-18T13:45:59.180 に答える