Ho scoperto questo operatore che non avevo ancora incontrato:
select name,
CASE type
WHEN 1 THEN 'private customer'
WHEN 2 THEN 'public customer'
WHEN 3 THEN 'reseller'
ELSE 'unknown'
END
from Agenda
giovedì 13 marzo 2008
WITH in SQL
Spesso in una query di SQL si ha bisogno di un risultato da utilizzare per varie operazioni.
Anzichè ricalcolare sempre tutto il risultato ogni volta si può utilizzare questa forma:
WITH tempTable(id,name)
as
(
select idUtente, NomeUtente from Utenti
where Affilizazione < @data
)
select * from tempTable.
....
....
Questa funzione è molto potente perchè riduce i tempi di elaborazione dello script.
Da ricordare che WITH deve essere preceduto da GO o dal punto e virgola (';') se prima di WITH c'è un'altra query.
Anzichè ricalcolare sempre tutto il risultato ogni volta si può utilizzare questa forma:
WITH tempTable(id,name)
as
(
select idUtente, NomeUtente from Utenti
where Affilizazione < @data
)
select * from tempTable.
....
....
Questa funzione è molto potente perchè riduce i tempi di elaborazione dello script.
Da ricordare che WITH deve essere preceduto da GO o dal punto e virgola (';') se prima di WITH c'è un'altra query.
Iscriviti a:
Post (Atom)