我有 2 张这样的桌子。我正在运行配置单元查询,并且 Windows 功能在配置单元中似乎非常有限。
表部
id | name |
1 | a |
2 | b |
3 | c |
4 | d |
表时间(使用重负载查询构建,因此如果我需要加入另一个新创建的表时间,这将是一个非常缓慢的过程。)
id | date | first | last |
1 | 1992-01-01 | 1 | 1 |
2 | 1993-02-02 | 1 | 2 |
2 | 1993-03-03 | 2 | 1 |
3 | 1993-01-01 | 1 | 3 |
3 | 1994-01-01 | 2 | 2 |
3 | 1995-01-01 | 3 | 1 |
我需要检索这样的东西:
SELECT d.id,d.name,
t.date AS firstdate,
td.date AS lastdate
FROM dbo.dept d LEFT JOIN dbo.time t ON d.id=t.id AND t.first=1
LEFT JOIN time td ON d.id=td.id AND td.last=1
如何得到最优化的答案?