ケースのようにチェックするためにUnionステートメントを使用したクエリがありますが、WhereにCASEを実装したいのですが、SQLの初心者であり、どうすればよいかわかりません。
私のクエリは次のようなものです
SELECT TOP 1 EndDate
FROM (
SELECT 1 AS seq,
EndDate,
FROM pipeline_rest_envr_info e
WHERE e.tckt_id = imt.tckt_id
AND stat = 'INPR'
UNION
SELECT TOP 1 2 AS seq,
EndDate,
FROM pipeline_rest_envr_info e
WHERE e.tckt_id = imt.tckt_id
AND stat = 'CMPL'
ORDER BY
enddate DESC
UNION
SELECT TOP 1 3 AS seq,
EndDate,
FROM pipeline_rest_envr_info e
WHERE e.tckt_id = imt.tckt_id
AND stat = 'PLND'
ORDER BY
strt_dt
UNION
SELECT 4 AS seq,
NULL,
FROM pipeline_rest_envr_info e
WHERE e.tckt_id = imt.tckt_id
) aa
ORDER BY
aa.seq