내 SQL 쿼리에서 나는 CASE WHEN THEN ELSE END
조건을 사용하여 계산하는 열 값입니다. 지금 나는 내가 따라서 CASE
을 사용했다 End Time - Start Time
를 표시 하나 더 열을 원하는두 개의 열 사이의 차이 계산 SQL
Ticket Type Dependency Start Date End Date Updated By
61423 FLM AGS 2013-01-22 15:50:08.757 2013-01-22 18:35:50.893 Kedar S
계산 열 및 일반 열
내 쿼리
SELECT T.Ticket [Ticket],
TT.TicketType [Ticket Type],
T.Dependency [Dependency],
CASE
WHEN (
SELECT TOP 1 f1.UpdatedOn
FROM TicketTypeFollowUp AS f1
WHERE f1.UpdatedOn < T.UpdatedOn
AND f1.Ticket = 61423
ORDER BY f1.UpdatedOn DESC
) IS NULL
THEN Ticket.TicketRaisedOn
ELSE (
SELECT TOP 1 f1.UpdatedOn
FROM TicketTypeFollowUp AS f1
WHERE f1.UpdatedOn < T.UpdatedOn
AND f1.Ticket = 61423
ORDER BY f1.UpdatedOn DESC
)
END [Start Date],
T.UpdatedOn [End Date],
L.EmpName [Updated By]
FROM dbo.TicketTypeFollowUp T
LEFT JOIN dbo.Ticket
ON T.Ticket = Ticket.Code
LEFT JOIN dbo.TicketType TT
ON T.TicketType = TT.Code
LEFT JOIN LoginUser L
ON T.UpdatedBy = L.Code
WHERE Ticket = 61423
쿼리 결과의 차이를 찾으려면 차이를 계산할 수 없습니다.
데이터베이스 당신은 CTE 또는 파생 테이블로 현재 쿼리를 사용할 수있는 SQL 서버 2008