【发布时间】:2009-10-06 13:47:21
【问题描述】:
使用 SQL Server 2000
我想根据 Table1.personid 获取 Table2.TimeIn Table2.TimeOut 以及如果 Table1.Date = Table3.Date 那么它应该需要一个 Table3.TimeIn, Table3.TimeOut。
3 个表格
表1
ID Date
001 20090503
001 20090504
001 20090506
002 20090505
002 20090506
等等……,
表2
ID TimeIn TimeOut
001 08:00:00 18:00:00
002 08:00:00 21:00:00
等等……,
表3
ID Date TimeIn TimeOut
001 20090504 10:00:00 22:00:00
001 20090505 17:00:00 23:00:00
002 20090505 12:00:00 21:00:00
等等……,
Select Table1.ID,
Table1.Date,
Table2.TimeIn,
Table2.TimeOut
from Table1
Inner Join Table2 on Table1.ID = Table2.ID
如果 Table1.Date = Table3.Date 那么它应该采取 Table3.TimeIn, Table3.TimeOut 否则 Table2.TimeIn, Table2.Timeout
预期输出
ID Date TimeIn TimeOut
001 20090503 08:00:00 18:00:00
001 20090504 10:00:00 22:00:00
001 20090506 08:00:00 18:00:00
002 20090505 12:00:00 21:00:00
002 20090506 08:00:00 21:00:00
等等……,
如何为这种情况编写查询?
【问题讨论】:
标签: sql sql-server tsql sql-server-2000