ऐसा करने का एक तरीका मूल क्वेरी को सबक्वेरी के रूप में लपेटना है, और WHERE
को स्थानांतरित करना है बाहरी क्वेरी का खंड:
SELECT * FROM (
SELECT `candidates`.`candidate_id`, -- this is the original query
`candidates`.`first_name`,
`candidates`.`surname`,
`candidates`.`DOB`,
`candidates`.`gender`,
DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(`candidates`.`DOB`, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d') < DATE_FORMAT(`candidates`.`DOB`, '00-%m-%d')) AS `age`
FROM `candidates` ) as innertable
WHERE `age` <= 20 -- this is now part of the outer query
स्पष्टीकरण:यह MySQL 5 में काम करता है
नोट:यह मानता है कि मूल क्वेरी काम करती है