مشاركة عبر


تعيين متغيرات لتجمعات SQL المخصصة في Azure Synapse Analytics

في هذه المقالة، ستجد نصائح أساسية لتعيين متغيرات T-SQL في تجمع SQL المخصص.

تعيين المتغيرات باستخدام DECLARE

يتم تعيين المتغيرات في تجمع SQL المخصص باستخدام العبارة DECLARE أو العبارة SET. تعد تهيئة المتغيرات باستخدام DECLARE واحدة من أكثر الطرق مرونة لتعيين قيمة متغيرة في تجمع SQL.

DECLARE @v  int = 0
;

يمكنك أيضا استخدام DECLARE لتعيين أكثر من متغير واحد في كل مرة. لا يمكنك استخدام SELECT أو UPDATE للقيام بما يلي:

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')
;

لا يمكنك تهيئة متغير واستخدامه في نفس عبارة DECLARE. لتوضيح النقطة، لا يسمح بالمثال التالي لأنه @p1 تمت تهيئته واستخدامه في نفس عبارة DECLARE. على هذا النحو، يعطي المثال التالي خطأ:

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

تعيين القيم باستخدام SET

SET هو أسلوب شائع لتعيين متغير واحد.

العبارات التالية هي جميع الطرق الصالحة لتعيين متغير باستخدام SET:

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

يمكنك تعيين متغير واحد فقط في كل مرة باستخدام SET. ومع ذلك، فإن عوامل التشغيل المركبة مسموح بها.

التقييدات

لا يمكنك استخدام UPDATE لتعيين المتغير.

الخطوات التالية

لمزيد من نصائح التطوير، راجع نظرة عامة على التطوير.