日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
數(shù)據(jù)庫命令:去重查詢distinct(數(shù)據(jù)庫命令distinct)

在數(shù)據(jù)庫中我們經(jīng)常需要查詢某個列中的不同值,這時(shí)我們就需要用到distinct關(guān)鍵字進(jìn)行去重篩選。distinct關(guān)鍵字可以去除相同的行,只留下不同的行。本文將向大家介紹distinct關(guān)鍵字的使用方法及其注意事項(xiàng)。

一、distinct的用法

1.基本語法:

“`

SELECT distinct 列名 FROM 表名;

“`

2.示例:

以學(xué)生表為例,查詢學(xué)生表中的年齡有哪些。

“`

SELECT distinct age FROM student;

“`

這個命令將返回不重復(fù)的年齡列。

3.注意事項(xiàng)

1)去重查詢會降低查詢的性能,因此我們應(yīng)該盡量減少使用distinct。

2)distinct關(guān)鍵字應(yīng)該放在查詢語句中的之一個位置。

3)可以對多個列使用distinct,這時(shí)要在多個列之間用逗號分隔。

4)如果我們希望查詢出去重后的結(jié)果,并且結(jié)果能夠按照某個字段排序時(shí),可以在查詢語句中加上order by子句。

5)distinct不會影響表的結(jié)構(gòu),也不會修改數(shù)據(jù),不必?fù)?dān)心數(shù)據(jù)的安全性問題。

6)使用distinct時(shí)可能會出現(xiàn)null值,如:SELECT distinct age FROM student where age is null,這樣會把查詢結(jié)果中的null取出來。

二、distinct的實(shí)際應(yīng)用場景

1.統(tǒng)計(jì)分析

在實(shí)際生活和工作中,我們經(jīng)常遇到的場景是需要對某個字段進(jìn)行去重,并統(tǒng)計(jì)不同值的個數(shù)。比如統(tǒng)計(jì)班級中有多少不同的學(xué)生性別:

“`

SELECT COUNT(distinct sex) FROM student;

“`

這個命令返回的結(jié)果是統(tǒng)計(jì)學(xué)生表中不同性別的人數(shù)。

2.篩選過濾

有時(shí)我們需要從數(shù)據(jù)庫中篩選出不同的數(shù)據(jù)進(jìn)行研究分析,比如我們需要從購物清單上篩選出不同的購買商品種類:

“`

SELECT distinct item_name FROM shopping_list;

“`

這個命令將返回不同的商品名稱列表,用于統(tǒng)計(jì)購物清單中的商品種類數(shù)。

三、常見誤區(qū)

1.認(rèn)為distinct關(guān)鍵字可以消除重復(fù)行。

在使用distinct關(guān)鍵字時(shí),有人可能會認(rèn)為它可以消除所有的重復(fù)行,但實(shí)際上distinct只對目標(biāo)列去重,而不是整個記錄行去重。如果查詢語句中存在多個列,則除了去重列以外的列不會被去重。

2.認(rèn)為distinct可以對所有數(shù)據(jù)類型的列去重。

數(shù)據(jù)庫的不同實(shí)現(xiàn)對于distinct關(guān)鍵字的支持也各不相同,有些數(shù)據(jù)庫對所有數(shù)據(jù)類型的列都支持去重查詢,有些只支持對特定的數(shù)據(jù)類型進(jìn)行去重。在使用distinct關(guān)鍵字時(shí)應(yīng)該先了解所用數(shù)據(jù)庫的具體支持情況。

distinct關(guān)鍵字應(yīng)用廣泛,可以用于統(tǒng)計(jì)各種不同類型的數(shù)據(jù),但在查詢過程中,應(yīng)注意其對查詢性能的影響和數(shù)據(jù)庫的不同實(shí)現(xiàn)情況,以免造成查詢效率不高的問題。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù)!

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

首先對于MySQL的DISTINCT的關(guān)鍵字的一些用法:

1.在count

不重復(fù)的記錄的時(shí)候能用到,比如SELECT

COUNT(

DISTINCT

id

FROM

tablename;就是計(jì)算talbebname表中id不同的記錄有多少條。

2,在需要返回記錄不同的id的具體值的時(shí)候可以用,比如SELECT

DISTINCT

id

FROM

tablename;返回talbebname表中不同的id的具體的值。

3.上面的情況2對于需要返回mysql表中2列以上的結(jié)果時(shí)會有歧義,比如SELECT

DISTINCT

id,

type

FROM

tablename;實(shí)際上返回的是

id與type同時(shí)不相同的結(jié)果,也就是DISTINCT同時(shí)作用了兩個字段,必須得id與tyoe都相同的才被排除了,與我們期望的結(jié)果不一樣。

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

5.其實(shí)還有另外一種解決方式,就是使用,SELECT

id,

type,

count(DISTINCT

id)

FROM

tablename,雖然這樣的返回結(jié)果多了一列無用的count數(shù)據(jù)(或許你就需要這個我說的無用數(shù)據(jù)),返回的結(jié)果是只有id不同的所有結(jié)果和上面的4類型可以互補(bǔ)使用,就是看你需要什么樣的數(shù)據(jù)了。

DISTINCT的效率:

SELECT

id,

type,

count(DISTINCT

id)

FROM

tablename;雖然這樣的返回結(jié)果多了一列無用的count數(shù)據(jù)(或許你就需要這個我說的無用數(shù)據(jù)),SELECT

id,

type

from

tablename

group

by

id;這樣貌似也皮毀可以,用distinct的時(shí)候,如果它有索引,mysql會把它轉(zhuǎn)成group

by的方式執(zhí)行。

MySQL數(shù)據(jù)庫

對于COUNT(*)的不同處理會造成不同的結(jié)果,比如,

  執(zhí)行:SELECT

COUNT(*)

FROM

tablename;即使對于千萬級別的數(shù)據(jù)mysql也能非常迅速的返回結(jié)果。

  執(zhí)行:

SELECT

COUNT(*)

FROM

tablename

WHERE…..;mysql的查詢時(shí)間開始哪沖攀升。

網(wǎng)上查資料得知:當(dāng)沒有WHERE語句對于整個mysql的表進(jìn)行count運(yùn)算的時(shí)候,MyISAM類型的表中保存有總的行數(shù),而當(dāng)添加有WHERE限定語句的時(shí)候Mysql需要對整個表進(jìn)行檢索,燃緩備從而得出count的數(shù)值,因此加上where條件的查詢速度就會很慢了。

以上關(guān)于MySQL數(shù)據(jù)庫的distinct以及count(*)的使用就介紹到這里了,希望本次的介紹能夠帶給您一些收獲。

數(shù)據(jù)庫命令 distinct的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于數(shù)據(jù)庫命令 distinct,數(shù)據(jù)庫命令:去重查詢distinct,MySQL中distinct和count(*)的使用方法比較的信息別忘了在本站進(jìn)行查找喔。

香港云服務(wù)器機(jī)房,創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)云服務(wù)器廠商,回大陸優(yōu)化帶寬,安全/穩(wěn)定/低延遲.創(chuàng)新互聯(lián)助力企業(yè)出海業(yè)務(wù),提供一站式解決方案。香港服務(wù)器-免備案低延遲-雙向CN2+BGP極速互訪!


當(dāng)前標(biāo)題:數(shù)據(jù)庫命令:去重查詢distinct(數(shù)據(jù)庫命令distinct)
網(wǎng)頁地址:http://m.5511xx.com/article/ccsscds.html