2010-11-24 5 views
0

J'ai des noms de champ datetime "de salestime" dans "ventes" tableauMySQL Query spécifique requise

Je dois obtenir des données comme:

SalesMonthYear  Total 
2010-11    10 
2010-10    15 
2010-09    21 

ou

Nov-2010   10 
Oct-2010   15 
Sep-2010   21 

Tout savoir comment puis-je y parvenir en utilisant une requête? Merci pour l'aide

Répondre

0
SELECT DATE_FORMAT(salesTime, '%Y-%m') AS salesMonthYear, 
     COUNT(*) AS salesCount 
FROM sales 
GROUP BY DATE_FORMAT(salesTime, '%Y-%m') 
+0

fonctionne comme un charme, merci –

1

Vous devez utiliser DATE_FORMAT et GROUP BY pour réaliser ce que vous voulez. Cette requête fera:

SELECT DATE_FORMAT(salestime, '%Y-%m') as SalesMonthYear, count(*) as `Total` FROM `sales` GROUP BY SalesMonthYear ORDER BY `salestime` 

Et pour la deuxième version:

SELECT DATE_FORMAT(salestime, '%b-%Y') as SalesMonthYear, count(*) as `Total` FROM `sales` GROUP BY SalesMonthYear ORDER BY `salestime` 
+0

merci, mais je pense que DATE_FORMAT ('salestime', '% Y-% m') et non le chemin que vous mentionnez –

+0

Ohh oui, j'ai vissé celui-ci pressé. – shamittomar

+1

mais, vous m'avez sur la bonne voie, donc merci encore :) –