最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

wheregroupby聯(lián)合使用_MySQL

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 18:42:19
文檔

wheregroupby聯(lián)合使用_MySQL

wheregroupby聯(lián)合使用_MySQL:bitsCN.com where group by聯(lián)合使用 select 列a,聚合函數(shù) from 表名 where 過濾條件 group by 列a having 過濾條件group by 字句也和where條件語句結(jié)合在一起使用。當(dāng)結(jié)合在一起時,where在前,group by 在后。即先對select xx fr
推薦度:
導(dǎo)讀wheregroupby聯(lián)合使用_MySQL:bitsCN.com where group by聯(lián)合使用 select 列a,聚合函數(shù) from 表名 where 過濾條件 group by 列a having 過濾條件group by 字句也和where條件語句結(jié)合在一起使用。當(dāng)結(jié)合在一起時,where在前,group by 在后。即先對select xx fr

bitsCN.com

where group by聯(lián)合使用

select 列a,聚合函數(shù) from 表名 where 過濾條件 group by 列a having 過濾條件

group by 字句也和where條件語句結(jié)合在一起使用。當(dāng)結(jié)合在一起時,where在前,group by 在后。即先對select xx from xx的記錄集合用where進(jìn)行篩選,然后再使用group by 對篩選后的結(jié)果進(jìn)行分組 使用having字句對分組后的結(jié)果進(jìn)行篩選

需要注意having和where的用法區(qū)別:

1.having只能用在group by之后,對分組后的結(jié)果進(jìn)行篩選(即使用having的前提條件是分組)。

2.where肯定在group by 之前

3.where后的條件表達(dá)式里不允許使用聚合函數(shù),而having可以。

四、當(dāng)一個查詢語句同時出現(xiàn)了where,group by,having,order by的時候,執(zhí)行順序和編寫順序是:

1.執(zhí)行where xx對全表數(shù)據(jù)做篩選,返回第1個結(jié)果集。

2.針對第1個結(jié)果集使用group by分組,返回第2個結(jié)果集。

3.針對第2個結(jié)果集中的每1組數(shù)據(jù)執(zhí)行select xx,有幾組就執(zhí)行幾次,返回第3個結(jié)果集。

4.針對第3個結(jié)集執(zhí)行having xx進(jìn)行篩選,返回第4個結(jié)果集。

5.針對第4個結(jié)果集排序。

例子:

完成一個復(fù)雜的查詢語句,需求如下:

按由高到低的順序顯示個人平均分在70分以上的學(xué)生姓名和平均分,為了盡可能地提高平均分,在計(jì)算平均分前不包括分?jǐn)?shù)在60分以下的成績,并且也不計(jì)算賤人(jr)的成績。

分析:

1.要求顯示學(xué)生姓名和平均分

因此確定第1步

select s_name,avg(score) from student

2.計(jì)算平均分前不包括分?jǐn)?shù)在60分以下的成績,并且也不計(jì)算賤人(jr)的成績

因此確定第2步

where score>=60 and s_name !=’jr’

3.顯示個人平均分

相同名字的學(xué)生(同一個學(xué)生)考了多門科目 因此按姓名分組

確定第3步

group by s_name

4.顯示個人平均分在70分以上

因此確定第4步

having avg(s_score)>=70

5.按由高到低的順序

因此確定第5步

 order by avg(s_score) desc

前面也記錄一篇

http://www.bitsCN.com/database/201212/179348.html

五、索引

1.索引是單獨(dú)的數(shù)據(jù)庫對象,索引也需要被維護(hù)。

2.索引可以提高查詢速度,但會降增刪改的速度。

3.通過一定的查詢觸發(fā),并不是越多越好。

什么時候不適合用索引?

1.當(dāng)增刪改的操作大于查詢的操作時。

2.查詢的語句大于所有語句的三分之一時。

 創(chuàng)建索引語法:create index 索引名 on 表明 (列名) 刪除索引語法:drop index 索引名

bitsCN.com

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

wheregroupby聯(lián)合使用_MySQL

wheregroupby聯(lián)合使用_MySQL:bitsCN.com where group by聯(lián)合使用 select 列a,聚合函數(shù) from 表名 where 過濾條件 group by 列a having 過濾條件group by 字句也和where條件語句結(jié)合在一起使用。當(dāng)結(jié)合在一起時,where在前,group by 在后。即先對select xx fr
推薦度:
標(biāo)簽: 使用 聯(lián)合 一起使用
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top