ऐसा क्यों है कि आपको अपने द्वारा बनाए गए कॉलम (उदाहरण के लिए "संख्या के रूप में 1 चुनें") को HAVING के बाद रखने की आवश्यकता है और MySQL में WHERE की नहीं?
WHERE
GROUP BY
. से पहले लागू किया जाता है , HAVING
के बाद लागू किया जाता है (और समुच्चय पर फ़िल्टर कर सकता है)।
सामान्य तौर पर, आप इनमें से किसी भी खंड में उपनाम का संदर्भ नहीं दे सकते, लेकिन MySQL
SELECT
. को संदर्भित करने की अनुमति देता है GROUP BY
. में स्तर के उपनाम , ORDER BY
और HAVING
।
और क्या "WHERE 1" (कॉलम नाम के बजाय पूरी परिभाषा लिखना) करने के बजाय कोई डाउनसाइड्स हैं
यदि आपके परिकलित व्यंजक में कोई समुच्चय नहीं है, तो उसे WHERE
. में डाल दें खंड शायद अधिक कुशल होगा।