我有以下SQL语句,
SELECT NAME,TEXT, VERSION
FROM VTABLE
WHERE VERSION <= (select version from BTABLE where ID = 'TEST')
带回来 -
Name Text Version
----|-------|--------|
A | APP1 | 1 |
A2 | APP1 | 2 |
B | APP2 | 1 |
C | APP3 | 1 |
但是我需要每个应用程序返回的最大版本,所以结果应该是 -
Name Text Version
----|-------|--------|
A2 | APP1 | 2 |
B | APP2 | 1 |
C | APP3 | 1 |
我已经在VTABLE版本和BTABLE版本上绑定了JOIN -
SELECT V.NAME, V.TEXT, MAX(V.VERSION)
FROM VTABLE V
WHERE V.VERSION <= JOIN(select B.version from BTABLE B where B.ID = 'TEST') ON V.VERSION = B.version
然而这是失败的。几乎是一个例子,基于B.version,我需要为此返回APP(最大V.VERSION)
答案 0 :(得分:0)
您可以这样尝试...使用row_number ...如果您使用T-SQL ...我的临时表表示您的查询返回的数据...您可以嵌套该查询而不是{{ 1}}
from #Version