我不是数据库管理员,现在我在查询单个表时遇到问题。
我得到表如下
更新
我想查询如下图所示的内容
更新
我该怎么做?非常菜鸟查询谢谢。
你可以这样做:
SELECT MAX(T1.CloseDate) as [Date],
T1.Job,
MAX(CASE WHEN T1.WorkRole = 'Case' THEN COALESCE(T2.WorkType,T1.WorkType) END) AS [Case],
MAX(CASE WHEN T1.WorkRole = 'Engineer' THEN COALESCE(T1.WorkType,T2.WorkType) END) AS [WT]
FROM TableName T1 LEFT JOIN
TableName T2 ON T1.CloseDate<T2.CloseDate AND T1.Job=T2.Job
GROUP BY T1.Job
ORDER BY [Date] DESC
结果:
Date Job Case WT
------------------------------------------------------
January, 01 2008 00:00:00 Senior Normal Electronic
January, 01 2005 00:00:00 Junior Average Electronic
SQL Fiddle中的示例结果。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句