Tidak, tidak ada cara untuk merujuk ke alias, tetapi Anda dapat menetapkan ekspresi ke variabel, lalu merujuk ke variabel dalam klausa pilih yang sama.
Di dalam penugasan variabel pernyataan pilih selalu dilakukan oleh operator infiks :=
. *Dalam SET
pernyataan, dapat berupa =
atau :=
.
misalnya
SELECT
ord_id
, candy_id
, price
, quantity
, @exc_cost := price * quantity AS exc_cost
, @exc_cost * @tax_rate AS my_favourite_field
...
<FROM CLAUSE>
Anda juga dapat melakukan penugasan variabel secara kondisional.
misalnya
IF(quantity > 90,
@exc_cost := price * quantity * 0.95
, @exc_cost := price * quantity) AS exc_cost
Catatan 1:Jika tidak ada ukuran agregat &kelompok demi klausa, variabel dievaluasi menurut urutan kolom:
SELECT @t, @t+2 FROM (SELECT @t := 1) a
menghasilkan keluaran
@t @t+2
1 3