现有一个表 3个字段A(id) B( 标志位) c (时间)6333 1 时间1
6333 2 时间2
6333 1 时间3
6333 2 时间4
......
其中1和2 是对应的,现在希望算出 各个id下 标志位为 2的时间与标志位为1 的时间差
6333 2 时间2
6333 1 时间3
6333 2 时间4
......
其中1和2 是对应的,现在希望算出 各个id下 标志位为 2的时间与标志位为1 的时间差
IF(OBJECT_ID('TA','U') IS NOT NULL) DROP TABLE TA
CREATE TABLE TA(A INT,B INT,C DATETIME)
INSERT INTO TA
SELECT 6333,1,'2012-1-1' UNION ALL
SELECT 6333,2,'2012-1-10' UNION ALL
SELECT 6334,1,'2012-1-25' UNION ALL
SELECT 6334,2,'2012-1-31'
SELECT T1.A, DATEDIFF(D, T1.C,T2.C) FROM TA AS T1
JOIN TA AS T2 ON T1.A=T2.A AND T2.B>T1.B ID 差值
----------- -----------
6333 9
6334 6(2 行受影响)