一本一本久久a久久精品综合,啦啦啦视频免费播放在线观看,六十六十路熟妇高熟在线,老头解开奶罩吸奶头高潮视频,一本久久a久久免费精品不卡,顶级欧美熟妇高清xxxxx,爆乳熟妇一区二区三区霸乳,无码h黄肉3d动漫在线观看

綠色資源網:您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

綠色資源網

技術教程
您的位置:首頁數據庫類SQL Server → 實例講解sql語句中having與where有什么區別?

實例講解sql語句中having與where有什么區別?

我要評論 2012/09/05 18:18:55 來源:綠色資源網 編輯:downcc.com [ ] 評論:0 點擊:368次

Where 是一個約束聲明,使用Where約束來自數據庫的數據,Where是在結果返回之前起作用的,Where中不能使用聚合函數。 
 
Having是一個過濾聲明,是在查詢返回結果集以后對查詢結果進行的過濾操作,在Having中可以使用聚合函數。

在查詢過程中聚合語句(sum,min,max,avg,count)要比having子句優先執行。而where子句在查詢過程中執行優先級高于聚合語句。
 
下面用一個例子進一步說明問題。假設有數據表:
[sql]
CREATE TABLE  `test`.`salary_info` ( 
  `id` int(10) unsigned NOT NULL auto_increment, 
  `deparment` varchar(16) NOT NULL default '', 
  `name` varchar(16) NOT NULL default '', 
  `salary` int(10) unsigned NOT NULL default '0', 
   PRIMARY KEY  (`id`)     
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8; 
 
例1:要查找平均工資大于3000的部門
則sql語句應為:
[sql]
select deparment, avg(salary) as average from salary_info  
group by deparment having average > 3000 
此時只能使用having,而不能使用where。一來,我們要使用聚合語句avg;二來,我們要對聚合后的結果進行篩選(average > 3000),因此使用where會被告知sql有誤。
 
例2:要查詢每個部門工資大于3000的員工個數
sql語句應為:
[sql]
select deparment, count(*) as c from salary_info  
where salary > 80 group by deparment 
此處的where不可用having進行替換,因為是直接對庫中的數據進行篩選,而非對結果集進行篩選。

關鍵詞:sql語句

閱讀本文后您有什么感想? 已有 人給出評價!

  • 1 歡迎喜歡
  • 28 白癡
  • 16 拜托
  • 232 哇
  • 238 加油
  • 10 鄙視
主站蜘蛛池模板: 日韩精品乱码av一区二区| 999精产国品一二三产区区| 大地二在线影视免费观看| 国产a级三级三级三级| hd老熟女bbn老淑女| 成 人色 网 站 欧美大片| 美女视频黄是免费| 乱人伦中文字幕在线| 亚洲av日韩综合一区尤物| 女人扒开屁股让男人桶30分钟| 99久久人妻无码精品系列| 韩国午夜理论在线观看| 日韩一区国产二区欧美三区| 久久国产36精品色熟妇| 精品影院| 欧美乱大交xxxxx潮喷l头像 | 女上男下野战gif动态图| 久久99热全是成人精品亚洲欧美精品 | 欧美成人午夜免费全部完| 国产成人免费ā片在线观看老同学| 麻豆果冻传媒2021精品传媒一区 | 少妇脱了内裤在客厅被| 男人av天堂专区| 99久久国产综合精品成人影院| 好男人资源在线观看免费| 色偷偷亚洲天堂av| 人妻洗澡被强公日日澡| 厨房喂奶乳hh| 国内精品久久久久影院日本| 日韩av在线高清观看| 少女大人免费观看高清电视剧韩剧| 久久天天躁狠狠躁夜夜爽| 男女啪啪gif动态图27报| 精品久久综合亚洲欧美久久| 亚洲av永久无码精品网站色欲 | 另类老妇奶性生bbwbbw| 暖暖免费观看电视在线高清| 欧美潮喷videosvideo| 国产精品色拉拉| 荫蒂添的好舒服视频| 国产精品成人av片免费看|