MySQL去重資料
導讀 | DISTINCT 實際上和 GROUP BY 操作的實現非常相似,只不過是在 GROUP BY 之後的每組中只取出一條記錄而已。所以,DISTINCT 的實現和 GROUP BY 的實現也基本差不多,沒有太大的區別。同樣可以透過鬆散索引掃描或者是緊湊索引掃描來實現,當然,在無法僅僅使用索引即能完成 DISTINCT 的時候,MySQL 只能透過臨時表來完成。但是,和 GROUP BY 有一點差別的是,DISTINCT 並不需要進行排序。 |
在使用 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 消除重複的記錄值,語法格式為:
SELECT DISTINCT <欄位名> 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 值,且沒有重複的值。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2695350/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql資料去重和排序MySql排序
- MySQL資料庫行去重複和列去重複MySql資料庫
- MySQL 去重SQLMySql
- C#資料去重C#
- Mysql查詢去重MySql
- C# datatable中重複資料去重C#
- 大資料去重(data deduplication)方案大資料
- map/reduce實現資料去重
- Oracle:重複資料去重,只取最新的一條資料Oracle
- 列組合資料去重複值
- mysql查詢去重方法解析MySql
- 資料校驗---記一次讀取json配置資料,資料去重,去空JSON
- mysql 清除重複資料MySql
- mysql避免插入重複資料MySql
- MySQL 處理重複資料MySql
- MySQL刪除重複資料MySql
- ClickHouse 實時資料去重final+group by
- KaiwuDB 時序引擎資料去重功能詳解AI
- MapReduce應用案例--簡單的資料去重
- MapReduce程式設計例項之資料去重程式設計
- 6個備份資料的去重加密工具加密
- 第七篇:經典案例:資料去重
- MySQL 查詢重複的資料MySql
- mysql多表多欄位查詢並去重MySql
- 10W資料匯入該如何與庫中資料去重?
- 切片去重(string,int型別去重)型別
- [MySQL Help]答朋友問:5000W記錄的Innodb表如何快速的去重複資料MySql
- Cannot set property ‘dataIndex‘ of undefined 大資料關係圖報錯,賦予的資料有重複,去重AIIndexUndefined大資料
- MySQL多列欄位去重的案例實踐MySql
- sql 去重SQL
- 列表去重
- mysql查詢表裡的重複資料方法和刪除重複資料MySql
- JS陣列去重 – JSON陣列去重陣列JSON
- js 中基礎資料結構陣列去重問題JS資料結構陣列
- Spark千億級資料去重,效能最佳化踩坑之路Spark
- 【Flink】基於 Flink 的流式資料實時去重
- 陣列合並且去重&向一個陣列新增一條資料(重複的就不新增)&陣列物件去重處理陣列物件
- Mysql: 利用強制索引去掉重資料MySql索引