2011-09-19 67 views
4

是否可以使用BETWEEN语句作为LEFT JOIN的条件?SQL左连接(条件之间)

SELECT Table_1.*, Table_2.* 
FROM Table_1 LEFT JOIN Table_2 
ON Table_1.value BETWEEN Table_2.Value_1 AND Table_2.Value_2 

回答

7

没错,是的,但你需要从Table_1指定列名,如下所示:

SELECT Table_1.*, Table_2.* 
FROM Table_1 LEFT JOIN Table_2 
ON Table_1.Value BETWEEN Table_2.Value_1 AND Table_2.Value_2 
+0

感谢您的确认。我前一段时间想到了它。我的查询不会返回任何错误,但也不会返回任何结果。问题来自我用于between语句的日期。我忘了将它们转换成时间。傻我。大声笑。 – ELM

+0

'ON Table_1 BETWEEN'没有返回任何错误? Table_1或Table_2是否也有一个名为'Table_1'的列?如果没有,那么一个无效的列错误(消息207)肯定应该是结果... –

+0

对不起@Aaron我的错误。这应该是Table_1.Value。 – ELM