नहीं, उपनामों को संदर्भित करने का कोई तरीका नहीं है, लेकिन आप एक चर के लिए अभिव्यक्ति निर्दिष्ट कर सकते हैं, और फिर उसी चयन खंड में चर को संदर्भित कर सकते हैं।
एक सेलेक्ट स्टेटमेंट के अंदर वेरिएबल असाइनमेंट हमेशा इंफिक्स ऑपरेटर द्वारा किया जाता है :=
. *एक SET
में कथन, यह या तो =
हो सकता है या :=
।
जैसे
SELECT
ord_id
, candy_id
, price
, quantity
, @exc_cost := price * quantity AS exc_cost
, @exc_cost * @tax_rate AS my_favourite_field
...
<FROM CLAUSE>
आप सशर्त रूप से परिवर्तनीय असाइनमेंट भी कर सकते हैं।
जैसे
IF(quantity > 90,
@exc_cost := price * quantity * 0.95
, @exc_cost := price * quantity) AS exc_cost
नोट 1:कुल उपायों और समूह दर खंड के अभाव में, चर का मूल्यांकन कॉलम क्रम के अनुसार किया जाता है:
SELECT @t, @t+2 FROM (SELECT @t := 1) a
उत्पादन करता है
@t @t+2
1 3