2008-10-21 7 views

Odpowiedz

14

To:

DECLARE @MyVariable INT 
SET @MyVariable = 8 
1
declare @myvar int 

select @myvar = 8 
5
declare @myvar int 

Set @myvar = 8 

select * from mytable where id > @myvar 
3

Dla wyjaśnienia: zarówno SET i wybierz praca, ale SET jest standardem ANSI. Jednakże, jeśli ustawienie wielu wartości jednocześnie, następnie

SET @one = 1 
SET @two = 2 

będzie bardzo nieznacznie wolniej niż

SELECT @one = 1, @two = 2 

Co można zyskać na szybkości może również być kompensowane przez czytelności i przejrzystości, jednak.