1. COUNT函數
ysql中最基本的統計函數,可以用來統計某個字段的行數或者非空行數,也可以用來統計某個字段中不同取值的出現次數。比如統計某個表中,字段a中不同取值的出現次數,可以使用如下語句:
SELECT a, COUNT(*) FROM 表名 GROUP BY a;
其中GROUP BY語句用來分組,將表中所有a字段相同的行分為一組,并對每組進行統計。
2. GROUP BY語句
GROUP BY語句可以用來對表中的數據進行分組統計,常用于分類數據統計。它的基本語法如下:
SELECT 列1, 列2, ..., COUNT(*) FROM 表名 GROUP BY 列1, 列2, ...;
其中列1,列2等表示要分組的列,COUNT(*)表示統計每個分組中的行數。
3. HAVING語句
HAVING語句可以用來對GROUP BY分組后的結果進行篩選。比如,對某個表中的字段a進行分組統計,并只保留出現次數大于等于10的分組,可以使用如下語句:
SELECT a, COUNT(*) FROM 表名 GROUP BY a HAVING COUNT(*) >= 10;
4. CASE語句
CASE語句可以用來將某個字段的值按照一定的規則分類,然后進行統計。比如,統計某個表中字段a的值分別屬于1,2,3三個類別的數量,可以使用如下語句:
SELECT SUM(CASE WHEN a=1 THEN 1 ELSE 0 END) AS '類別1', SUM(CASE WHEN a=2 THEN 1 ELSE 0 END) AS '類別2', SUM(CASE WHEN a=3 THEN 1 ELSE 0 END) AS '類別3' FROM 表名;
ysql分類數據統計方法,可以根據需要選擇合適的方法進行使用。