時間:2024-02-05 11:03作者:下載吧人氣:23
要說having,首先要說一下where,這個語句非常常用且重要。
在我們查詢數據庫時,不可能每一次都把所有數據拿出來(上億的數據量,啥服務器也扛不住?。?/p>
通常都是取出前10條,按時間取前30條,按名稱、年齡、金額等數據表中有的字段的值進行篩選;也有可能篩選后數據還是比較多,會進行一個分頁處理。
這里where的作用就必不可少了!只要是表中存在的字段值類型,寫成布爾值結果的表達式即可,多條件與、或、非運算都可以。
可以說,項目中用到的SQL語句,99.9%都包含Where語句的,實用程度可想而知。
但是它卻有無法實現的一些功能,這時,having就要出場了~
SQL語句中,如果需要計算總數、累加、求均值等聚合運算,并篩選出總數未達到或達到的部分集合
Where語句無法替代的,比如
在Where 中使用 Count時,異常報錯如下
圖片內容翻譯: Where中不能出現聚合運算,只能寫到having或者select中
因此,可以這么說,having可以做到where做不到的效果
通常有having的地方都有聚合運算,
網友評論