where和having區別

壹:函數

where後面不能跟聚合函數(sum、avg、count、max、min)select

having後面能夠跟查詢

貳:vi

where和having都能用:co

select goods_price,goods_name from sw_goods where goods_price>100

select goods_price,goods_name from sw_goods having goods_price>100

緣由:goods_price做爲條件也出如今了查詢字段中。

 叄:

只能用where:

select goods_name,goods_number from sw_goods where goods_price>100

select goods_name,goods_number from sw_goods having goods_price>100(X)

緣由:goods_price做爲篩選條件沒有出如今查詢字段中,因此就會報錯。

肆:

只能用having 的:

select goods_category_id,avg(good_price) as ag from sw_goods group by goods_category having ag>1000

select  goods_category_id,avg(goods_price) as ag from sw_goods where ag>1000 group by goods_category(X)報錯,這個表裏沒有這個ag這個字段。

相關文章
相關標籤/搜索