Исправить ошибку «Неверный синтаксис рядом с ключевым словом« КОГДА »» в SQL Server? - PullRequest
0 голосов
/ 22 октября 2019

Я пытаюсь реализовать эти два условия в выражении case, но этого просто не происходит. Пожалуйста, помогите мне исправить это?

SELECT 
    BR, CID, TRNDATE, 
    CASE
        WHEN TRNTYPE = '108' THEN -1 ELSE 1 * TrnAmt/100
        WHEN TRNTYPE = '114' THEN (TrnIntAmt - TrnTaxAmt)/100
    END as TransactionAmount
FROM 
    T_TRNHIST

Ответы [ 2 ]

4 голосов
/ 22 октября 2019

Запрос Должен быть таким

SELECT BR, CID, TRNDATE, 
CASE
    WHEN TRNTYPE = '108' THEN -1 
    WHEN TRNTYPE = '114' THEN (TrnIntAmt - TrnTaxAmt)/100
    ELSE 1 * TrnAmt/100
    END as TransactionAmount
FROM T_TRNHIST

Иначе условие наступит, наконец, когда-нибудь, когда закончится

2 голосов
/ 22 октября 2019

просто небольшое изменение, переместите ELSE до END

SELECT BR, CID, TRNDATE, 
CASE
    WHEN TRNTYPE = '108' THEN -1 
    WHEN TRNTYPE = '114' THEN (TrnIntAmt - TrnTaxAmt)/100
    else 1 * TrnAmt/100
END as TransactionAmount
FROM T_TRNHIST
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...