Sql server 基于ID列的标志
我试图根据两个ID列和一个标志来分配标志 输入: ID_1 ID_2 旗子1 1000 1111 N 2000 1111 Y 3000 1111 Y 4000 2222 N 5000 2222 NSql server 基于ID列的标志,sql-server,tsql,sql-server-2008,Sql Server,Tsql,Sql Server 2008,我试图根据两个ID列和一个标志来分配标志 输入: ID_1 ID_2 旗子1 1000 1111 N 2000 1111 Y 3000 1111 Y 4000 2222 N 5000 2222 N 我没有访问SQL Server 2008的权限,但这在Azure上有效: CREATE TABLE #t (ID_1 int, ID_2 int, Flag1 char(1)); INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (1000, 1111, 'N');
我没有访问SQL Server 2008的权限,但这在Azure上有效:
CREATE TABLE #t (ID_1 int, ID_2 int, Flag1 char(1));
INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (1000, 1111, 'N');
INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (2000, 1111, 'Y');
INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (3000, 1111, 'Y');
INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (4000, 2222, 'N');
INSERT INTO #t (ID_1, ID_2, Flag1) VALUES (5000, 2222, 'N');
WITH flg (ID_2, MaxFlag)
AS
(
SELECT ID_2, MAX(Flag1) MaxFlag
FROM #t
GROUP BY ID_2
)
SELECT t.*, flg.MaxFlag
FROM #t t
JOIN flg ON t.ID_2 = flg.ID_2;
请向我们展示您的尝试……您已经清楚地说明了条件,为什么不尝试一下呢?SQL Server 2008现在完全不受支持,是时候升级了。