MySQL中的DISTINCT和GROUP BY都是用于從查詢結(jié)果中消除重復(fù)行,但它們的工作方式和應(yīng)用場景有所不同。
1.DISTINCT: DISTINCT關(guān)鍵字用于返回唯一不同的值。當(dāng)你在SELECT語句中使用DISTINCT時,MySQL會從查詢結(jié)果中刪除所有重復(fù)的行,只返回唯一的行。這在需要消除查詢結(jié)果中的重復(fù)數(shù)據(jù)時非常有用。
語法:
SELECT DISTINCT column_name1, column_name2, ...
FROM table_name;
2.GROUP BY: GROUP BY子句用于對查詢結(jié)果進行分組,通常與聚合函數(shù)(如COUNT、SUM、AVG等)一起使用。GROUP BY子句根據(jù)一個或多個列對結(jié)果集進行分組,然后對每個組應(yīng)用聚合函數(shù)。這對于對數(shù)據(jù)進行匯總和分析非常有用。
語法:
SELECT column_name1, column_name2, ..., aggregate_function(column_name)
FROM table_name
GROUP BY column_name1, column_name2, ...;
總結(jié):