SELECT{DISTINCT} * | 查询列1 别名 1,查询列2 别名 2,…
FROM 表名称别名
{WHERE 条件(s)}
{ORDER BY 排序字段ASC|DESC, 排序字段ACS | DESC ,…}
思考: DISTINCT可以去重,GROUP BY分组后也可以,有什么区别呢?
SELECTDISTINCT PROD_ID,UNIT_ID,A.Prod_Name FROM TB_PROD_UNIT A;
SELECT PROD_ID,UNIT_ID,A.Prod_Name FROMTB_PROD_UNIT A GROUP BY A.PROD_ID, UNIT_ID,A.Prod_Name;
我的习惯:对于表的别名直接A、B、C、D……当然以前惯用表的简称去命名别,但写起起挺费劲。
因为distinct会导致全表扫描,而group by如果索引建的,恰当的话,会有性能上的提高。GROUP BY可以使用组函数。