MySQL选择表1中的所有行和table2中的所有行

时间:2016-08-05 14:49:36

标签: mysql

我有一个包含80行的表(Table1),我有另一个包含20行的表(Table2)。

每个表都有一个包含相同数据的列,我试图使用此列生成一个返回table1中所有行和table2中所有行的查询,即使table2在table1中没有匹配项也是如此

到目前为止,我有:

SELECT
Table2.SeqNo,
Table2.SeqHeader,
Table2.SeqText,
Table1.UniqueID,
Table1.Room,
Table1.`Status`
FROM
Table1
Inner Join Table2 ON Table2.SeqID = Table1.SeqID
WHERE Table1.UniqueID = (a value)

我尝试了很多不同的编写此查询的方法,但我现在卡住了。

任何帮助都会很棒。

编辑:

我现在有:

SELECT
Table2.SeqNo,
Table2.SeqHeader,
Table2.SeqText,
Table1.UniqueID,
Table1.Room,
Table1.`Status`
FROM
Table1
LEFT OUTER JOIN Table2 ON Table2.SeqID = Table1.SeqID
WHERE Table1.UniqueID = (a value)

当我运行查询时,结果只会重新启动“Table1.UniqueID =(a value)”的行。我需要的是Table2中的所有行和table1中的所有行。

预期结果:

   | SeqNo   | SeqHeader    | SeqText     | UniqueID      |-- Room--   |-- Status--|
   +---------+--------------+-------------+---------------+------------+-----------+
   |- Data - |-----Data-----|----Data-    |--Data----     |--- Data----|--- Data-- |
   |- Data - |-----Data-----|----Data-    |--Data----     |--- Data----|--- Data-- |
   |- Data - |-----Data-----|----Data-    |-No Data--     |-No Data--  |-No Data-  |
   |- Data - |-----Data-----|----Data-    |-No Data--     |-No Data--  |-No Data-  |
   |- Data - |-----Data-----|----Data-    |-No Data--     |-No Data--  |-No Data-  |
   |- Data - |-----Data-----|----Data-    |-No Data--     |-No Data--  |-No Data-  |

这是我能做的最好的,因为我没有实时数据中的数据,因为我无法让查询工作。

我希望这会有所帮助。

1 个答案:

答案 0 :(得分:1)

现在我看到了您的预期结果,看起来您的加入是相反的。尝试

SELECT
Table2.SeqNo,
Table2.SeqHeader,
Table2.SeqText,
Table1.UniqueID,
Table1.Room,
Table1.`Status`
FROM
Table2
LEFT OUTER JOIN Table1 ON Table2.SeqID = Table1.SeqID
WHERE Table2.UniqueID = (a value)