2013-12-18 94 views
0

我在下面的sql CASE語句中出現錯誤。它炸彈在(CASE WHEN SUM(ISNULL(OQ.Quantity,0) = 0 THEN SUM(R.Quantity) - SUM(R.Quantity * .9275))。有人可以幫忙嗎?由於發現THEN,預計';'錯誤

CASE 
    WHEN SUM(ISNULL(OQ.Quantity,0)) = 0 THEN SUM(R.Quantity * .9275) 
    ELSE SUM(OQ.Quantity) 
    END AS On_Time_Quantity, 

CASE 
    WHEN SUM(ISNULL(OQ.Quantity,0)) > SUM(R.Quantity) THEN 0 
    ELSE 
     **CASE WHEN SUM(ISNULL(OQ.Quantity,0) = 0 THEN SUM(R.Quantity) - SUM(R.Quantity * .9275))** 
    ELSE 
     CASE WHEN SUM(ISNULL(OQ.Quantity,0) < SUM(R.Quantity) THEN SUM(R.Quantity) - SUM(ISNULL(OQ.Quantity,0)) 
    END 
    END AS Late_Quantity, 
+0

,你能不能給我們整個查詢? – Liath

+0

它不讓我發佈整個查詢,因爲它太長了 – ldeassis

+0

我想你錯過了END。其他情況下的情況;當時然後其他情況下,然後結束結束....你有3個案件打開2結束。我在代碼中假設**只是在這裏顯示你收到錯誤的地方? –

回答

0

無論是對新行THEN或終止THEN前患有結腸癌的表達:

CASE 
    WHEN ... ; THEN 

OR

CASE 
    WHEN ... 
    THEN 
+0

Marcell。感謝你的快速回復。我添加了一個;在THEN之前,現在我收到以下錯誤:第328行符號爲49的SQL中的語法錯誤。找到'THEN',預計'tokenlize時出錯'。謝謝 – ldeassis