Как показать другое значение, если некоторые столбцы возвращают FALSE,
например,
COLUMN "BASIC" возвращает FALSE, но мне нужно показать для пользователя ДА или НЕТ. Случай FALSE, возврат NO.
Как показать другое значение, если некоторые столбцы возвращают FALSE,
например,
COLUMN "BASIC" возвращает FALSE, но мне нужно показать для пользователя ДА или НЕТ. Случай FALSE, возврат NO.
Если varchar или бит, обработка NULL
case
when BASIC = 'FALSE' then 'NO'
when BASIC <> 'FALSE' then 'YES'
else 'UNDEFINED'
end
или просто бит
case
when BASIC = 1 then 'YES'
when BASIC = 0 then 'NO'
else 'UNDEFINED'
end
Edit:
SELECT
TipoImovel_Id AS TII_SEQ,
Descricao AS TII_DSC,
Sigla AS TII_DSC_SIGLA,
-- choose which one you want from the answers here
case
when BASIC = 1 then 'YES'
when BASIC = 0 then 'NO'
else 'UNDEFINED'
end AS SomeColumnName
FROM San_TipoImovel";
case when column = 'FALSE' then 'NO' else 'YES' end
поскольку SQL 2012 вы можете использовать функцию IIF
IIF(BASIC = 'TRUE', 'YES', 'NO')
Используйте оператор CASE
:
case BASIC when 'True' then 'Yes' ELSE 'No' end
Вот так:
SELECT TipoImovel_Id AS TII_SEQ, Descricao AS TII_DSC, Sigla AS TII_DSC_SIGLA, case when basic = 'FALSE' then 'NO' else 'YES' end
FROM San_TipoImovel
Вы можете создать определенную пользователем функцию, чтобы в будущем вы могли просто сказать что-то вроде:
select dbo.YesNo(Active) from APAccount
вот функция
CREATE FUNCTION [dbo].YesNo(@Value Bit)
RETURNS varchar(3)
BEGIN
DECLARE @R as varchar(3)
SET @R =
(
Select
case
when @Value = 1 then 'Yes'
else 'No'
end
)
RETURN @R
END