mysql对不同类分别求平均值
时间: 2024-10-27 19:02:10 浏览: 35
mysql 按不同时间维度查询价格平均值
在MySQL中,如果你想要针对不同类型的数据(比如一类是数值型,一类是非数值型)分别计算平均值,通常需要先进行数据分类处理。这可以通过SQL查询中的CASE语句或者IF...THEN...ELSE结构来实现。
例如,假设你有一个名为`table_name`的表,其中有一个字段`data_column`,你想按数据类型分为两类计算平均值:
```sql
SELECT
AVG(CASE WHEN data_type = 'numeric_type' THEN data_column ELSE NULL END) AS numeric_average,
AVG(CASE WHEN data_type = 'non_numeric_type' THEN data_column ELSE NULL END) AS non_numeric_average
FROM
table_name
WHERE
data_type IN ('numeric_type', 'non_numeric_type');
```
在这个查询中,`data_type`是你用于区分数据类型的字段,`numeric_type`和`non_numeric_type`分别是你要计算平均数的两类数据的类型名。如果数据类型不是你指定的两类之一,`AVG()`函数会返回NULL。
阅读全文