2010-11-24 24 views
0

I Datetime-Feldnamen "salestime" in "sales" TabelleMySQL spezifische Abfrage Anforderung

Ich brauche zu bekommen Daten haben:

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

oder

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

Jeder weiß, wie kann ich dies mithilfe der Abfrage erreichen? Danke für die Hilfe

Antwort

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

funktioniert wie ein Charme, danke –

1

Sie müssen DATE_FORMAT und GROUP BY verwenden, um zu erreichen, was Sie wollen. Diese Abfrage wird es tun:

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

Und für die zweite Version:

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

Dank, aber ich denke, DATE_FORMAT ('salestime', '% Y-% m') und nicht in So wie du es erwähnst –

+0

Ohh ja, ich habe das in Eile geschraubt. – shamittomar

+1

aber, du hast mich auf der richtigen Spur, also danke nochmal :) –