我只是想知道如何创建一个查询,以这种方式检查列是否位于引用表之间。
如
SELECT *
FROM Table1 WHERE Column1 BETWEEN ( SELECT Column1 , Column2 FROM TABLE2 )
我只是不知道如何以正确的方式实现它。
谢谢你。
我只是想知道如何创建一个查询,以这种方式检查列是否位于引用表之间。
如
SELECT *
FROM Table1 WHERE Column1 BETWEEN ( SELECT Column1 , Column2 FROM TABLE2 )
我只是不知道如何以正确的方式实现它。
谢谢你。
如果您可以在 中具有重叠范围Table2
,并且您想要的Table1
只是在 中的任何范围内的(唯一)记录Table2
,那么此查询将执行此操作。
SELECT *
FROM Table1
WHERE EXISTS (
SELECT *
FROM Table2
Where Table1.Column1 BETWEEN Table2.Column1 and Table2.Column2)
如果 Table2 中的范围不重叠,您也可以使用 JOIN 解决此问题,否则您将需要使用其中一个DISTINCT
或ROW_NUMBER()
将它们缩减为唯一Table1
记录。
试试这个....
SELECT *
FROM Table1 as t1
INNER JOIN Table2 t2 ON t1.Column1 BETWEEN t2.Column1 AND t2.Column2
这行得通
SELECT * FROM table1 as t1,table2 as t2
WHERE t1.Column1 BETWEEN t2.Column1 AND t2.Column2.