Подтвердить что ты не робот

Использование операторов сравнения в предложении SELECT запроса T-SQL

Как выбрать результат оператора сравнения как поля с типом BIT?

Как это работает в C#:

bool isGreater = FieldA > FieldB;

Как это работает в T-SQL:

SELECT (FieldA > FieldB) AS BIT FROM t

Как правильно написать такую ​​задачу?

4b9b3361

Ответ 1

Вы должны использовать предложение CASE:

CASE
    WHEN FieldA > FieldB THEN 1
    ELSE 0
END 

Ответ 2

Select Convert(Bit, Case When FieldA > FieldB Then 1 Else 0 End) As YourBitColumn

Если вы хотите вернуть BIT, вам нужно преобразовать (или привести) в бит тип данных, иначе SQL интерпретирует жестко закодированную константу (1 или 0) как целое число.