Bagikan melalui


Menetapkan variabel untuk kumpulan SQL khusus di Azure Synapse Analytics

Dalam artikel ini, Anda akan menemukan tips penting untuk menetapkan variabel T-SQL di kumpulan SQL khusus.

Mengatur variabel dengan DECLARE

Variabel dalam kumpulan SQL khusus diatur menggunakan DECLARE pernyataan atau SET pernyataan . Menginisialisasi variabel dengan DECLARE adalah salah satu cara paling fleksibel untuk mengatur nilai variabel di kumpulan SQL.

DECLARE @v  int = 0
;

Anda juga dapat menggunakan DECLARE untuk mengatur lebih dari satu variabel sekaligus. Anda tidak dapat menggunakan SELECT atau UPDATE untuk melakukan hal berikut:

DECLARE @v  INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Smith')
,       @v1 INT = (SELECT TOP 1 c_customer_sk FROM Customer where c_last_name = 'Jones')
;

Anda tidak dapat menginisialisasi dan menggunakan variabel dalam pernyataan DECLARE yang sama. Untuk mengilustrasikan poin, contoh berikut tidak diizinkan karena @p1 diinisialisasi dan digunakan dalam pernyataan DECLARE yang sama. Dengan demikian, contoh berikut memberikan kesalahan:

DECLARE @p1 int = 0
,       @p2 int = (SELECT COUNT (*) FROM sys.types where is_user_defined = @p1 )
;

Mengatur nilai dengan SET

SET adalah metode umum untuk mengatur satu variabel.

Pernyataan berikut adalah semua cara yang valid untuk mengatur variabel dengan SET:

SET     @v = (Select max(database_id) from sys.databases);
SET     @v = 1;
SET     @v = @v+1;
SET     @v +=1;

Anda hanya dapat mengatur satu variabel pada satu waktu dengan SET. Namun, operator gabungan diizinkan.

Keterbatasan

Anda tidak dapat menggunakan UPDATE untuk penetapan variabel.

Langkah berikutnya

Untuk tips pengembangan selengkapnya, lihat ringkasan pengembangan.