where和having的區(qū)別
where子句的作用是在對查詢結(jié)果進行分組前,將不符合where條件的行去掉,即在分組之前過濾數(shù)據(jù),條件中不能包含聚組函數(shù),使用where條件顯示特定的行。
having子句的作用是篩選滿足條件的組,即在分組之后過濾數(shù)據(jù),條件中經(jīng)常包含聚組函數(shù),使用having條件顯示特定的組,也可以使用多個分組標準進行分組。
where:
where是一個約束聲明,使用where來約束來自數(shù)據(jù)庫的數(shù)據(jù);
where是在結(jié)果返回之前起作用的;
where中不能使用聚合函數(shù)。
having:
having是一個過濾聲明;
在查詢返回結(jié)果集以后,對查詢結(jié)果進行的過濾操作;
在having中可以使用聚合函數(shù)。
where和having的執(zhí)行順序:where早于group by早于having。
大學院校在線查
有疑問就來發(fā)現(xiàn)