2012-08-24 3 views
5

Ho una tabella 'voci'uso delle espressioni regolari nel gruppo dalla clausola

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 

voglio Group da Parte 1 -% - Parte 3 di Item_Code come seguire che è solo un'idea

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

By parti intendo cercando Item_Code in termini di Hyphen

output desiderato

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

"espressioni regolari in gruppo per clausola", "raggruppamento con espressione regolare". Google/Bing non fornisce nulla di rilevante

Non riesco a capire se gli sviluppatori di database non sono tenuti a fornire questa funzionalità o come lo fanno. Sono richiesto tale raggruppamento dal proprietario del negozio. per esempio Categoria (Parte 1) saggia Somma delle quantità.

risposta

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; 

Esempio: SQLFiddle

+0

Come devo modificare il mio titolo di domanda. Quindi sarebbe più utile in seguito per gli spettatori. Cosa pensi con quali parole avrei dovuto cercarlo? – Sami

+0

Penso che sia ok. Probabilmente non hai bisogno di cambiarlo. – Omesh

+0

O mio Dio. Questo è il modo in cui @Omesh. C'è qualcos'altro da pagare di più? come solo il voto e l'accettazione mi sembra un po 'speciale per il tuo sforzo di demo e soluzione. – Sami