2013-07-11 18 views
17

In una selezione di query, vorrei visualizzare il risultato se un campo soddisfa una condizione.Selezionare il valore se la condizione in SQL Server

Immagina di avere un tavolo chiamato stock. Questa tabella ha una colonna che indica il numero di ciascun articolo nel magazzino.

Quello che vorrei fare è qualcosa di simile:

SELECT 
    stock.name, IF (stock.quantity <20, "Buy urgent", "There is enough") 
FROM stock 

C'è qualche funzione in SQL Server per farlo?

risposta

42

Prova Case

SELECT stock.name, 
     CASE 
     WHEN stock.quantity <20 THEN 'Buy urgent' 
     ELSE 'There is enough' 
     END 
FROM stock 
+0

Lo userò ma sembra un peccato doverlo fare quando tutto ciò che voglio è un valore booleano. non vedo perché mssql non può lasciarmi fare "select (stock.quantity <20) As booleanValue" –

+1

@JoshuaDuxbury Se vuoi un valore booleano puoi provare qualcosa come http://stackoverflow.com/a/7778500/ 2246380 – Ram

Problemi correlati