首页 >

mysql根据范围分组 |mysql更新数据库语句

mysql怎么找题目,mysql排除某个记录,mysql创建用户出现1045,mysql有b树吗,mysql json 获取值,mysql更新数据库语句mysql根据范围分组 |mysql更新数据库语句

GROUP BY语句可以根据指定的列进行分组。例如大家有一个商品销售表,其中包含了商品编号、销售量、价格等字段。现在大家需要根据价格区间,统计每个区间的销售量。

SELECT 
CASE 
WHEN price< 10 THEN '0-10元' 
WHEN price< 20 THEN '10-20元' 
WHEN price< 30 THEN '20-30元' 
ELSE '30元及以上' 
END AS price_range, 
SUM(sales_volume) AS sales 
FROM goods_sales 
GROUP BY price_range;

上面的SQL语句中,使用了CASE语句来判断当前商品价格属于哪个价格区间,并将其命名为price_range字段。然后使用SUM函数来对每个价格区间的销售量进行求和,并使用GROUP BY语句来对price_range分组。

除了使用CASE语句外,大家还可以使用IF语句来实现相同的效果:

SELECT 
IF(price< 10, '0-10元', 
IF(price< 20, '10-20元', 
IF(price< 30, '20-30元', '30元及以上'))) AS price_range, 
SUM(sales_volume) AS sales 
FROM goods_sales 
GROUP BY price_range;

在使用GROUP BY语句时,需要注意以下几点:

  • GROUP BY语句必须紧跟在SELECT语句之后;
  • GROUP BY语句中只能包含SELECT语句中出现的列,或者是使用聚合函数计算得出的结果;
  • GROUP BY语句中的列,在SELECT语句中必须使用聚合函数进行计算,否则会报错。

mysql根据范围分组 |mysql更新数据库语句
  • mysql如何按照大小排序? |mysql数据库对接oracle
  • mysql如何按照大小排序? |mysql数据库对接oracle | mysql如何按照大小排序? |mysql数据库对接oracle ...

    mysql根据范围分组 |mysql更新数据库语句
  • 局域网内笔记本如何访问MySQL数据库(详细步骤教程) |装mysql没有反应
  • 局域网内笔记本如何访问MySQL数据库(详细步骤教程) |装mysql没有反应 | 局域网内笔记本如何访问MySQL数据库(详细步骤教程) |装mysql没有反应 ...

    mysql根据范围分组 |mysql更新数据库语句
  • MySQL在安卓开发中的应用(推荐5款最好用的开发工具) |mysql cpu占用率过高
  • MySQL在安卓开发中的应用(推荐5款最好用的开发工具) |mysql cpu占用率过高 | MySQL在安卓开发中的应用(推荐5款最好用的开发工具) |mysql cpu占用率过高 ...