我需要根据以下条件编写查询。
我有两个表,因为我需要从table1获取所有列,并根据日期字段从另一个字段中获取另一个列。
Date 1
中的Table 1
字段为Datetime
格式,
Date2
内嵌table 2
格式的date
字段。
我假设以下查询,请更新我是否有任何更改
Select Table1.*, c3
From Table1
Full Outer join
Table2
On Date(Date1) = Date2
请确认我应该使用哪个加入?
答案 0 :(得分:1)
您的ON
子句看起来是正确的。您的规范似乎要求JOIN
(内部联接)或LEFT JOIN
。 MySQL没有FULL OUTER JOIN
。无论如何,它可能对您的应用程序没有意义。 (但这是我的猜测。)
试试这个。
SELECT t1.*, t2.c3
FROM Table1 t1
LEFT JOIN Table2 t2 ON Date(t1.Date1) = t.Date2
这将为您提供Table1中的每一行,以及Table2中相关的c3
值。如果Table1中的任何给定行缺少表2中的相应行,则c3
值将为NULL(这是LEFT JOIN的作用)。