假设我有一个包含两列的表格。实际上它将在两个不同的表中,但为了简单起见,我们可以使用一个表。我只想知道如何解决这个问题
A | B
------------------------
2016-01 | 2015-00
2016-02 | 2015-01
2017-01 | 2017-01
2018-00 | 2018-01
如何编写选择列A
并将其与列B
进行比较的查询。
我想要
2016-01
对应2015-01
2016-02
至2015-01
2017-01
至2017-01
2018-00
至2017-01
(因为2018-00
小于2018-01
)如何确保列A
仅从B
列中选择列A
大于列B
的值。
我尝试将查询编写为
SELECT A FROM TB1 WHERE '1016-01' >= (SELECT MAX(B) FROM TB1)
但是这个查询不起作用,因为max(b)
将始终返回“2017-01
答案 0 :(得分:0)
在 SQL Server 中,您可以使用以下内容:
A B
2016-01 2015-01
2016-02 2015-01
2017-01 2017-01
2018-00 2017-01
将输出:
-
我们的想法是将201501
替换为int
之类的值,然后将其作为{{1}}值进行比较。
答案 1 :(得分:-1)
使用2个不同的表
SELECT A.Col, B.Col
FROM A JOIN B ON A.Col >= B.Col