mysql - 按部分字符串分组

标签 mysql group-by

这是我的表格:

----------+-----------+--------------
45678-sm-w|   18      | Mens clothing
----------+-----------+--------------
45678-sm-b|   5       | Mens clothing
----------+-----------+--------------
2189-L-Wh |   4       | Juniors Clothing
----------+-----------+--------------
2189-L-Bl |   3       | Juniors Clothing
----------+---------- +--------------

这是期望的结果:

----------+-----------+--------------
45678     |   23      | Mens clothing
----------+-----------+--------------
2189      |   7       | Juniors Clothing
----------+-----------+--------------

最佳答案

如果你正在选择数据,那么你可以使用这样的东西:

select SUBSTRING_INDEX(col1, '-', 1) col1, 
  sum(col2) Total, 
  col3
from table1
group by SUBSTRING_INDEX(col1, '-', 1), SUBSTRING_INDEX(col3, ' ', 1)
order by col1 desc

参见 SQL Fiddle With Demo

关于mysql - 按部分字符串分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12865411/

相关文章:

mysql - 如何在 Laravel 4 中初始化用户定义的 MySQL 变量?

entity-framework - 如何在没有 if 语句(SUM/AVG)的情况下实现以下查询?

Mysql 数据透视表按两列分组

python - groupby 对象 pandas 的绝对值平均值

python - 按内部数组的特定元素分组

php - Codeigniter- Ajax Codeigniter Ajax - 通过 ajax 返回多行

MySQL根据两个日期列之间的结果选择行

mysql - 如何检查 MySQL 脚本中前面语句的错误?

java - Android 应用程序崩溃数据库

python - 在 Python pandas 中自定义 rolling_apply 函数