Date Time Mode ID
2017-01-01 13:00:00.0000000 3 10
2017-01-01 14:00:00.0000000 1 10
2017-01-01 15:00:00.0000000 3 10
2017-01-01 15:30:00.0000000 1 10这是一个临时表,我想对这些数据进行配对。我只想要下面的输出:
InTime(Mode-3) OutTime(Mode-1)
13:00:00.0000000 14:00:00.0000000
15:00:00.0000000 15:30:00.0000000 我需要得到和上面一样的进场时间。
发布于 2017-02-28 05:37:24
更新为问题更新:
根据数据和数据类型/模式(如果表名为timeTable),这是可行的:
SELECT time AS 'InTime(Mode-3)',
(SELECT TOP 1 time FROM timeTable
WHERE mode = 1
AND id = outerTable.id
AND date = outerTable.date
AND time > outerTable.time
ORDER BY date, time) AS 'OutTime(Mode-1)'
FROM timeTable AS outerTable
WHERE mode = 3输出:
InTime(Mode-3) | OutTime(Mode-1)
---------------------------|---------------------------
13:00:00.0000000 | 14:00:00.0000000
15:00:00.0000000 | 15:30:00.0000000仅供参考:
我使用了这个表模式
CREATE TABLE timeTable(
date DATE,
time TIME,
mode INTEGER,
id INTEGER
);https://stackoverflow.com/questions/42500622
复制相似问题