sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan laver du en visningskolonne IKKE NULL

Du kan opnå det, du ønsker, ved at omarrangere din forespørgsel lidt. Tricket er, at ISNULL skal være på ydersiden, før SQL Server vil forstå, at den resulterende værdi aldrig kan være NULL .

SELECT ISNULL(CAST(
    CASE Status
        WHEN 3 THEN 1  
        ELSE 0  
    END AS bit), 0) AS HasStatus  
FROM dbo.Product  

En grund til, at jeg faktisk finder dette nyttigt, er, når jeg bruger en ORM og du vil ikke have den resulterende værdi knyttet til en nullbar type. Det kan gøre tingene lettere hele vejen rundt, hvis din applikation ser, at værdien aldrig er nul. Så behøver du ikke skrive kode for at håndtere nul-undtagelser osv.



  1. Hvad er et skema i SQL, og hvordan opretter man det?

  2. Få apps med det højeste antal anmeldelser siden en dynamisk række af dage

  3. 10 effektive måder at være mere produktiv på på arbejdspladsen

  4. Hvordan roterer man PgBouncer-logfiler i Linux/Windows?