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

Hvordan bruger man en case-sætning i skalært værdisat funktion i SQL?

Der er to typer CASE-udtryk :enkel og søgt. Du skal vælge den ene eller den anden - du kan ikke bruge en blanding begge typer i ét udtryk.

Prøv dette:

SELECT CASE
    WHEN @Period = 1 THEN 1
    WHEN @Period > 1 AND @Period <= 7 THEN 2
    WHEN @Period > 7 AND @Period <= 30 then 3
    -- etc...
    ELSE 0
END

Du skal også tildele resultatet til noget, som andre allerede har påpeget.



  1. Sådan tildeler du datoværdi til alle returnerede mysql-forespørgsler

  2. Hvorfor lære Cassandra med Hadoop?

  3. Hvad er det maksimale antal tegn, som nvarchar(MAX) kan indeholde?

  4. SQL/PHP:Vis top 3 mest solgte produkter fra databasen