一、DISTINCT函數
DISTINCT是MySQL中最常用的去重函數之一。DISTINCT的作用是返回唯一不同的值。我們來看下下面這個例子:
SELECT DISTINCT column_name FROM table_name;
可以看到,我們使用DISTINCT來去除table_name表中column_name列中的重複值。
二、GROUP BY語句
GROUP BY語句也可以用來進行去重。GROUP BY根據指定列的值進行分組,使得每個組只有一個唯一值。下面是一個例子:
SELECT column_name FROM table_name GROUP BY column_name;
上面的語句可以使得table_name表中column_name列中的重複值分組並只返回一個唯一值。
三、HAVING語句
HAVING語句是在GROUP BY語句中使用的過濾器,它可以根據指定條件過濾分組結果。在過濾分組結果時,HAVING會處理聚合函數。下面是一個例子:
SELECT column_name, COUNT(column_name) FROM table_name GROUP BY column_name HAVING COUNT(column_name) > 1;
上面的語句可以使得table_name表中column_name列中的重複值分組並只返回一個唯一值,但是將篩選出出現次數大於一的列。
四、UNION語句
UNION語句可以用來合併兩個或更多SELECT語句的結果集。如果兩個結果集中存在相同的行,UNION語句會自動去重。下面是一個例子:
SELECT column_name FROM table1 UNION SELECT column_name FROM table2;
上面的語句可以將table1和table2的column_name列的結果集合併,並去除重複值。
五、INNER JOIN語句
INNER JOIN語句可以用來從兩個或更多表中返回數據,如果數據在多個表中存在,則會自動去重。下面是一個例子:
SELECT column_name FROM table1 INNER JOIN table2 ON table1.key = table2.key;
上面的語句可以使得從table1和table2兩個表中查找key列的值相同的行,並去除重複的結果。
六、小結
以上是MySQL中常用的去重函數和語句,每種方法都有其特定的應用場景和使用方法。程序員可以根據自己的需要選擇合適的方法,以達到去重的目的。
原創文章,作者:YSHQE,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/368284.html