4

我有一个表“项目”

Item_Code             |Rate  |Quantity
--------------------------------------
JOGGER-POWER-BLACK    |699   |5
JOGGER-POWER-WHITE    |599   |8    
JOGGER-PLAZA-WHITE    |1199  |2
SLEEPER-PLAZA-BLACK   |699   |6
SLEEPER-POWER-BLACK   |499   |5 

我想按 Item_Code 的 Part1-%-Part3 分组,如下所示

select (part1 and part3 of Item_Code) as 'Category-Color',sum(Quantity)
as Quantity group by (part1 and part3 of Item_Code)

通过零件,我的意思是用连字符来查看 Item_Code

期望的输出

Category-Color|Quantity
-------------------
JOGGER-BLACK  |5
JOGGER-WHITE  |10
SLEEPER-BLACK |11 

“group by 子句中的正则表达式”,“group by 正则表达式”。谷歌/必应不提供任何相关信息

我无法理解数据库开发人员是否不需要提供此功能或他们是如何做到的。商店所有者要求我进行此类分组。例如类别(第 1 部分)明智的数量总和。

4

1 回答 1

4
SELECT CONCAT(SUBSTRING_INDEX(Item_Code, '-', 1), '-', 
              SUBSTRING_INDEX(Item_Code, '-', -1)) AS Category_Color,
       SUM(Quantity) AS Quantity
FROM items
GROUP BY 1;

示例:SQLFiddle

于 2012-08-24T06:11:26.100 回答