一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Mysql - MySQL中distinct和count(*)的使用方法比較

MySQL中distinct和count(*)的使用方法比較

2020-05-21 17:45MYSQL教程網 Mysql

這篇文章主要針對MySQL中distinct和count(*)的使用方法比較,對兩者之間的使用方法、效率進行了詳細分析,感興趣的小伙伴們可以參考一下

首先對于MySQL的DISTINCT的關鍵字的一些用法:

1.在count 不重復的記錄的時候能用到,比如SELECT COUNT( DISTINCT id ) FROM tablename;就是計算talbebname表中id不同的記錄有多少條。

2,在需要返回記錄不同的id的具體值的時候可以用,比如SELECT DISTINCT id FROM tablename;返回talbebname表中不同的id的具體的值。

3.上面的情況2對于需要返回mysql表中2列以上的結果時會有歧義,比如SELECT DISTINCT id, type FROM tablename;實際上返回的是 id與type同時不相同的結果,也就是DISTINCT同時作用了兩個字段,必須得id與tyoe都相同的才被排除了,與我們期望的結果不一樣。

4.這時候可以考慮使用group_concat函數來進行排除,不過這個mysql函數是在mysql4.1以上才支持的。

5.其實還有另外一種解決方式,就是使用,SELECT id, type, count(DISTINCT id) FROM tablename,雖然這樣的返回結果多了一列無用的count數據(或許你就需要這個我說的無用數據),返回的結果是只有id不同的所有結果和上面的4類型可以互補使用,就是看你需要什么樣的數據了。
DISTINCT的效率:

SELECT id, type, count(DISTINCT id) FROM  tablename;雖然這樣的返回結果多了一列無用的count數據(或許你就需要這個我說的無用數據),SELECT id, type from tablename group by id;這樣貌似也可以,用distinct的時候,如果它有索引,mysql會把它轉成group by的方式執行。

 MySQL數據庫對于COUNT(*)的不同處理會造成不同的結果,比如,

  執行:SELECT COUNT(*) FROM tablename;即使對于千萬級別的數據mysql也能非常迅速的返回結果。 
  執行: SELECT COUNT(*) FROM tablename WHERE…..;mysql的查詢時間開始攀升。 

網上查資料得知:當沒有WHERE語句對于整個mysql的表進行count運算的時候,MyISAM類型的表中保存有總的行數,而當添加有WHERE限定語句的時候Mysql需要對整個表進行檢索,從而得出count的數值,因此加上where條件的查詢速度就會很慢了。
以上關于MySQL數據庫的distinct以及count(*)的使用就介紹到這里了,希望本次的介紹能夠帶給您一些收獲。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品亚洲456在线播放 | 午夜 在线播放 | 大桥未久midd—962在线 | 五月色婷婷在线影院 | 成人国产在线视频在线观看 | 欧美亚洲视频在线观看 | 五月天淫 | 亚洲国产成人精品 | 国内精品在线观看视频 | 国产aaaaa一级毛片 | 变态女王麻麻小说在线阅读 | 天天操丝袜 | 亚洲第一se情网站 | 99re这里只有精品视频在线观看 | www.97cao| 亚洲日日操 | 天天曰天天干 | 亚洲网红精品大秀在线观看 | 小小水蜜桃视频高清在线观看免费 | 欧美高清在线 | 免费观看欧美成人h | 蜜桃在线 | 无遮挡免费h肉动漫在线观看 | 日本一区二区三区久久 | 国产精品麻豆免费版 | 国内外成人在线视频 | 亚洲精品国产成人99久久 | 美女福利网站 | 俄罗斯三级在线观看级 | 国产图片综合区 | 亚洲码和乱人伦中文一区 | 欧美a级v片在线观看一区 | 我与岳乱短篇小说 | 日韩国产欧美成人一区二区影院 | www一区二区 | 欧美成人免费一区在线播放 | 国产午夜精品久久久久 | 日本三不卡 | 99热精品在线观看 | 金牛网155755水心论坛黄大父母 | 91欧美国产 |