2012-01-11 117 views
0

我需要顯示基於事務類型(費用,貸款,存款等)的條件。 如果交易類型不等於'貸款',那麼顯示哪裏條件(其中金額> 1000)。 如果交易類型是'貸款',那麼不需要在哪裏條件。 問題是對於交易類型'貸款'的金額爲空。where case in case statement - SQL Server

這是我的查詢..但我得到錯誤。幫助我在這裏做什麼錯誤。 此查詢是更大動態SQL的一部分。

@[email protected]+' case when TransactionType=''Loan'' then ''null'' else TotalAmount > ' + @amount + ' end ' 
+0

你得到了什麼確切的錯誤信息? – DOK 2012-01-11 00:19:50

回答

1

我不認爲你需要一個case語句。

where TransactionType = 'Loan' or (TransactionType <> 'Loan' and TotalAmount > @amount)

而且不知道你是否基於給出的有限的查詢需要TransactionType <> 'Loan'

+0

我認爲我們需要病例陳述因爲對於貸款(transtype)金額爲空。 – Henry 2012-01-11 00:40:53

+0

在上面的where子句中,它忽略了貸款的金額,所以無論它是否爲空都沒關係。 – dgundersen 2012-01-11 00:42:56

+0

是的,你是對的。我不需要案件陳述。謝謝你的幫助。 – Henry 2012-01-11 16:36:55