我有两个表,两个表都有一个日期列 - 如果行日期匹配,我想要做的就是加入表。
我尝试过以下代码:
SELECT *
FROM bats
LEFT
JOIN weather
ON 'weather.GMT' = 'bats.startDate'
这会将表连接到一个新表中,其中包含bats的所有值,但是天气的值为null。
我想要的是以下内容,例如:
observationID | startDate | commonName | GMT | WindSpeed | Event | Temp
------------------------------------------------------------------
1 12/12/2001 Natterer 12/12/2001 25 Rain
2 13/12/2001 Brown Eared 13/12/2001 12 Cloudy
Null Null Null 14/12/2001 14 Rain
上面的表格连接是天气表总是有1个条目,但是可以是1个,没有或几个条目用于蝙蝠表。
感谢任何帮助。
凯文
答案 0 :(得分:0)
你以相反的方式做到了,试试这个:
SELECT *
FROM weather AS w
LEFT JOIN bats AS b ON (w.GMT = b.startDate)
顺便说一句,请避免列名中的大写字母,并始终使用下划线表示空格,这是常规:)
答案 1 :(得分:0)
看看草莓的评论
'weather.GMT'是一个字符串
交换's(标签上方的键),你就会笑掉。或者你也可以删除引用标记,就像在Juan Alberto的回答中那样,这样也可以。如果列名称中有空格
,则只需要使用后引号(`)