क्या एक ही चयन में एक से अधिक स्थानीय चर अपडेट करना संभव है?टी-एसक्यूएल, एक ही चयन में एक से अधिक चर अद्यतन
कुछ की तरह:
इस तरहset @variableOne = (select avg(someColumn) from tblTable)
set @variableTwo = (select avg(otherColumn) from tblTable)
क्या एक ही चयन में एक से अधिक स्थानीय चर अपडेट करना संभव है?टी-एसक्यूएल, एक ही चयन में एक से अधिक चर अद्यतन
कुछ की तरह:
इस तरहset @variableOne = (select avg(someColumn) from tblTable)
set @variableTwo = (select avg(otherColumn) from tblTable)
कुछ:
select @var1 = avg(someColumn), @var2 = avg(otherColumn)
from theTable
set
@variableOne = avg(someColumn),
@variableTwo = avg(otherColumn)
from tblTable
यह थोड़ा इस कार्य के रूप में के रूप में तुच्छ कुछ के लिए दो अलग-अलग चयन आपरेशन बनाने के लिए बेकार लगता है
कैसे
SELECT @variableOne = avg(someColumn), @variableTwo = avg(otherColumn) from tblTable
यह मेरे लिए ठीक काम करता है।
आप एकाधिक चर निर्दिष्ट करने के लिए चयन असाइनमेंट का उपयोग कर सकते हैं। यह कोड स्थिरांक की एक पंक्ति उत्पन्न करता है और प्रत्येक को एक चर के लिए असाइन करता है।
SELECT
@var1 = 1,
@var2 = 'Zeus'
तुम भी क्वेरी टेबल कर सकते हैं और काम है कि जिस तरह से कार्य करें:
SELECT
@var1 = c.Column1,
@var2 = c.Column2,
FROM
Customers c
WHERE c.CustomerID = @CustomerID
सावधान: इस कोड को थोड़ी देर के पाश की तरह चल रही है।
SELECT असाइनमेंट पर SET असाइनमेंट का उपयोग करना पसंद करते हैं। उपरोक्त दोनों परिदृश्यों पर विचार करते समय केवल चयन असाइनमेंट का उपयोग करें।
बिल्कुल सही, धन्यवाद! – jandersson