it-swarm.com.de

TSQL, um NEIN oder JA statt WAHR oder FALSCH zurückzugeben

Wie kann ich einen anderen Wert anzeigen, wenn einige Spalten FALSE zurückgeben, 

zum Beispiel,

COLUMN "BASIC" gibt FALSE zurück, aber für den Benutzer muss JA oder NEIN angezeigt werden. Fall FALSE, NEIN zurücksenden.

16
Lucas_Santos

Wenn varchar oder bit, NULLs behandeln

case
    when BASIC = 'FALSE' then 'NO'
    when BASIC <> 'FALSE' then 'YES'
    else 'UNDEFINED'
end

oder wenn nur ein bisschen

case
    when BASIC = 1 then 'YES'
    when BASIC = 0 then 'NO'
    else 'UNDEFINED'
end

Bearbeiten:

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";
43
gbn
case when column = 'FALSE' then 'NO' else 'YES' end
6
Derek Kromm

seit SQL 2012 können Sie die IIF-Funktion verwenden

IIF(BASIC = 'TRUE', 'YES', 'NO')
3
FLICKER

So was:

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
0
Mark Kram

Sie können eine benutzerdefinierte Funktion erstellen, sodass Sie in der Zukunft einfach Folgendes sagen können:

select dbo.YesNo(Active) from APAccount

hier ist die Funktion

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
0
edilio

Verwenden Sie die Anweisung CASE:

case BASIC when 'True' then 'Yes' ELSE 'No' end
0