03 Solution For Common SQL Mistakes
03 Solution For Common SQL Mistakes
Note
Columns containing NULL DATA may be aggregated
Example:
SELECT
OD.BUSINESS_UNIT_ID
,OD.ORDER_NUM
,SUM(OD.ORDER_QTY)
FROM FINANCE.ORDER_DETAIL OD
WHERE FINANCE.ORDER_DETAIL.BUSINESS_UNIT_ID = 11
GROUP BY 1,2
Solution 1
Use ALIAS only
Recommended solution
Example:
SELECT
OD.BUSINESS_UNIT_ID
,OD.ORDER_NUM
,SUM(OD.ORDER_QTY)
FROM FINANCE.ORDER_DETAIL OD
WHERE OD.BUSINESS_UNIT_ID = 11
GROUP BY 1,2
Solution 2
Do not use an ALIAS
Use Table Name only
Not recommended
Implicit Transaction
Either option is acceptable
Default is ON
GROUP BY Usage
Syntax
SELECT MFG_ITEM_NUM FROM FINANCE.ORDER_DETAIL
GROUP BY MFG_ITEM_NUM
Takes 10 seconds
Reason
First level of aggregation occurs at the AMP level. The aggregated
data is then redistributed for the final level of aggregation.
Dell DDW / Teradata Project Documentation Dell Confidential 18