MySQL中有時需要對數據進行去重后再按某一字段分組查詢,這時候可以使用DISTINCT和GROUP BY結合使用來實現。
SELECT DISTINCT column1, column2, ... FROM table_name GROUP BY column1, column2, ...;
其中,DISTINCT用于去重,可以選擇需要去重的字段;GROUP BY用于分組,可以選擇需要分組的字段。
例如,我們有一個學生表,其中有學生的姓名、性別、年齡和學號等字段,現在需要按性別和年齡分組,并且對每組內的學生進行去重,查詢每組內的學生姓名和學號:
SELECT DISTINCT name, id FROM student_table GROUP BY gender, age;
執行以上SQL語句后,就可以得到每個性別和年齡組內去重后的學生姓名和學號。