Vous ne pouvez pas utiliser un alias de colonne dans WHERE
clause.
Donc, soit vous enveloppez votre requête dans une sélection externe et vous y appliquez votre condition
SELECT *
FROM
(
SELECT a, b, c,
(SELECT d FROM B LIMIT 0,1) d
FROM A
) q
WHERE d >= 10
ou vous pouvez introduire cette condition dans HAVING
clause à la place
SELECT a, b, c,
(SELECT d FROM B LIMIT 0,1) d
FROM A
HAVING d >= 10
Une autre approche consiste à utiliser CROSS JOIN
et appliquez votre condition dans WHERE
clause
SELECT a, b, c, d
FROM A CROSS JOIN
(
SELECT d FROM B LIMIT 0,1
) q
WHERE d >= 10
Voici SQLFiddle démo pour toutes les requêtes mentionnées ci-dessus.