MySQL 5.7 中的 GROUP BY 查詢非常實用,它可以根據一個或多個字段對數據進行分組,并計算出每組的總數、平均值、總和等等。在實際應用中,很多場景都需要使用 GROUP BY 查詢非。
首先,我們來看一下 GROUP BY 查詢的語法:
SELECT column_name(s) FROM table_name GROUP BY column_name(s)
在 GROUP BY 查詢中,我們可以指定一個或多個列作為分組的依據。然后,MySQL 會對相同的分組依據進行分組,并計算出每組的統計信息。
GROUP BY 查詢非(Not)是 GROUP BY 查詢的一種擴展語法,它與普通的 GROUP BY 查詢有類似的用法,只是多了一個 NOT 關鍵字。它的作用是排除掉分組依據中滿足某種條件的行,使這些行不參與分組。
下面是一個使用 GROUP BY 查詢非的例子:
SELECT department, AVG(salary) FROM employees WHERE department NOT IN ('HR', 'IT') GROUP BY department;
在上面的例子中,我們對員工表進行了分組,計算出了每個部門的平均薪資。但是,我們使用了 WHERE 子句來過濾掉了 HR 和 IT 部門的員工,這樣計算出的平均薪資就不包含這兩個部門的員工了。
在實際應用中,使用 GROUP BY 查詢非能夠更加高效地查詢出所需的數據,避免了不必要的計算和數據浪費。