where和having區別:


where和having區別:

  • having只能用在group by之后,對分組后的結果進行篩選(即使用having的前提條件是分組)。
  • where肯定在group by 之前,即也在having之前。
  • where后的條件表達式里不允許使用聚合函數,而having可以。

Where是一個約束聲明,在查詢數據庫的結果返回之前對數據庫中的查詢條件進行約束,即在結果返回之前起作用,且where后面不能使用聚合函數。

Having是一個過濾聲明,所謂過濾是在查詢數據庫的結果返回之后進行過濾,即在結果返回之后起作用,並且having后面可以使用聚合函數。

所謂聚合函數,是對一組值進行計算並且返回單一值的函數:sum---求和,count---計數,max---最大值,avg---平均值等。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM