Първо, не можете да използвате ALIAS
на WHERE
клауза. Трябва да използвате колоната,
SELECT SUBSTRING(rating, INSTR(rating,',') +1, +2) AS val
FROM users
WHERE SUBSTRING(rating, INSTR(rating,',') +1, +2) = '15'
Причината е следната:реда на работа е SQL,
- Клауза FROM
- Клауза WHERE
- Клауза GROUP BY
- клауза HAVING
- клауза SELECT
- клауза ORDER BY
ALIAS
се извършва на SELECT
клауза, която е преди WHERE
клауза.
ако наистина искате да използвате псевдонима, увийте го в подзаявка,
SELECT *
FROM
(
SELECT SUBSTRING(rating, INSTR(rating,',') +1, +2) AS val
FROM users
) s
WHERE val = '15'