2012-01-11 5 views
0

Мне нужно показать, где условие основано на типе транзакции (расход, кредит, депозит и т. Д.). , если тип транзакции не равен «Займу», тогда покажите, где условие (где сумма> 1000). , если тип транзакции - «Кредит», тогда нет необходимости в том, где условие. Проблема заключается в том, что для типа транзакции «Loan» сумма равна нулю.где условие в случае оператора - SQL Server

Вот мой запрос. Но я получаю ошибку. Помогите мне, какую ошибку я здесь делаю. Этот запрос является частью более динамичного SQL.

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

Какое сообщение об ошибке вы получаете? – DOK

ответ

1

Я не думаю, что вам нужен отчет о случаях.

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

Также не уверен, что если вам нужно TransactionType <> 'Loan' на основе ограниченного запроса данного.

+0

Я думаю, что нам нужен оператор case, потому что для кредитов (transtype) сумма равна нулю. – Henry

+0

В вышеприведенной статье он игнорирует сумму кредитов, поэтому не имеет значения, является ли она нулевой. – dgundersen

+0

Да, вы правы. Мне не нужна инструкция case. Спасибо за вашу помощь. – Henry

Смежные вопросы