在使用 mysql select 語句查詢資料的時候返回的是所有匹配的行。
例如,查詢 tb_students_info 表中所有 age 的執行結果如下所示。
mysql>select age from
tb_students_info;+--
----+
| age |+--
----+|25
||23|
|23||
22||24
||21|
|22||
23||22
||23|
+------+
10 rows in
set (0.00 sec)
可以看到查詢結果返回了 10 條記錄,其中有一些重複的 age 值,有時出於對資料分析的要求,需要消除重複的記錄值。這時候就需要用到 distinct 關鍵字指示 mysql 消除重複的記錄值,語法格式為:
selectdistinct
《欄位名》
from
《表名》;
【例項】查詢 tb_students_info 表中 age 欄位的值,返回 age 欄位的值且不得重複,輸入的 sql 語句和執行結果如下所示。
mysql>select
distinct
age
->
from
tb_students_info;+--
----+
| age |+--
----+|25
||23|
|22||
24||21
|+------+
5 rows in
set (0.11 sec)
由執行結果可以看到,這次查詢結果只返回了5條記錄的 age 值,且沒有重複的值。
MySQL Distinct 去掉查詢結果重覆記錄
出處 使用 distinct 關鍵字可以去掉查詢中某個欄位的重覆記錄。語法 select distinct column from tb name例子 假定 user 表有如下記錄 uidusername1小李 2小張3小李 4小王5小李 6小張sql 語句 select distinct user...
count去重和distinct去重
有兩種去重方法 1 select count distinct id from a 這個是將所有值都放入到記憶體中,key為列值,通過hash算出有多少個key就是多少行。2 select count 1 from select 1 from a group by id a,這個是通過group b...
JS陣列去重,物件去重
例項1根據indexof去重,indexof的好處就是返回的是首次出現的位置,這樣後面即使出現的值一樣,也只能返回第一次出現的索引,當然這個只適用於簡單的陣列 物件陣列去重 const objarr const obj const newobjarr for let i 0 i objarr.len...