我有下面寫的查詢。多個表達式在sql查詢中使用case exprssion
SELECT T1.[AcctCode],T1.[Segment_0],SUM(T0.[DebLTotal]) AS BUDGET, SUM(T3.[Debit]) AS DEBIT,
AcctName = CASE WHEN T1.[Segment_0] LIKE '6001%%' THEN 'Operating Cost'
WHEN T1.[Segment_0] LIKE '6002%%' THEN 'Operating Cost'
WHEN T1.[Segment_0] LIKE '6003%%' THEN 'Operating Cost'
WHEN T1.[Segment_0] LIKE '6004%%' THEN 'Operating Cost'
WHEN T1.[Segment_0] LIKE '6005%%' THEN 'Operating Cost'
WHEN T1.[Segment_0] LIKE '6006%%' THEN 'Operating Cost'
ELSE T1.[AcctName] END
FROM OBGT T0 INNER JOIN OACT T1 ON T0.[AcctCode]=T1.[AcctCode] INNER JOIN OBGS T2
ON T0.[Instance] = T2.[AbsId] INNER JOIN JDT1 T3 ON T1.[AcctCode] = T3.[Account] INNER JOIN OASC T4 ON T1.[Project]=T4.[Code]
where T1.[Segment_0] like '60%%'
GROUP BY T1.[AcctCode],T1.[Segment_0],T1.[AcctName]
此查詢爲我提供了不同的運營成本值。我需要類似WHEN T1.[Segment_0] LIKE '6002%%,6003%%,6004%%' THEN 'Operating Cost'
。可能嗎?我不需要一個接一個的喜歡。作爲運營成本,我需要一切。請幫我解決這個問題。
請編輯您的問題並提供樣本數據和期望的結果。目前尚不清楚你想要做什麼。 –
簡而言之,如果segment_0從6開始,那麼賬戶名稱應該是運營成本。當我將案件提升至'6006'時,我得到多行。我只需要一行。 @GordonLinoff – Kirat
等等,我們真的在說什麼「從6開始」?正如'LIKE'6%''就足夠了嗎? –