मेरा अनुमान है कि आप वास्तव में GROUP BY
. नहीं करना चाहते हैं कुछ_उत्पाद।
इसका जवाब: "क्या GROUP BY
करने का कोई तरीका है? इस मामले में एक कॉलम उपनाम जैसे some_product, या क्या मुझे इसे एक सबक्वायरी और उस पर समूह में रखने की आवश्यकता है?" है: आप GROUP BY
नहीं कर सकते एक स्तंभ उपनाम।
SELECT
क्लॉज, जहां कॉलम एलियास असाइन किए गए हैं, को GROUP BY
. के बाद तक प्रोसेस नहीं किया जाता है खंड। समूहीकरण के लिए परिणाम उपलब्ध कराने के लिए इनलाइन व्यू या कॉमन टेबल एक्सप्रेशन (CTE) का उपयोग किया जा सकता है।
इनलाइन दृश्य:
select ...
from (select ... , CASE WHEN col1 > col2 THEN SUM(col3*col4) ELSE 0 END AS some_product
from ...
group by col1, col2 ... ) T
group by some_product ...
सीटीई:
with T as (select ... , CASE WHEN col1 > col2 THEN SUM(col3*col4) ELSE 0 END AS some_product
from ...
group by col1, col2 ... )
select ...
from T
group by some_product ...