आप WHERE
. में कॉलम उपनाम का उपयोग नहीं कर सकते खंड।
तो आप या तो अपनी क्वेरी को बाहरी चयन में लपेटें और वहां अपनी शर्त लागू करें
SELECT *
FROM
(
SELECT a, b, c,
(SELECT d FROM B LIMIT 0,1) d
FROM A
) q
WHERE d >= 10
या आप उस शर्त को HAVING
. में पेश कर सकते हैं इसके बजाय खंड
SELECT a, b, c,
(SELECT d FROM B LIMIT 0,1) d
FROM A
HAVING d >= 10
एक और तरीका है CROSS JOIN
. का उपयोग करना और WHERE
. में अपनी शर्त लागू करें खंड
SELECT a, b, c, d
FROM A CROSS JOIN
(
SELECT d FROM B LIMIT 0,1
) q
WHERE d >= 10
यह रहा SQLFiddle उपरोक्त सभी प्रश्नों के लिए डेमो।