2015-09-17 14 views
0
$Y = mysql_query("SELECT Year, Month, SUM(Amount) FROM farm_exp WHERE 
Client_Id='" . $_SESSION["id"] . "' && Flock_Id='" . $_SESSION["f_id"] . "' 
GROUP BY Year, Month " , $connection) or die("Query failed : " . mysql_error()); 

while($row = mysql_fetch_array($Y)){ 
    $monthly[] = $row; 
} 

這個查詢產生正確的數據,但順序是按字母順序排列的,而不是按月份排列。年份排序很好。按月份和年份分組MYSQL查詢時,如何按月排序數據而不是按字母順序?用PHP編寫

我越來越:

2015 Dec €2000 
2016 Apr €1000 
2016 Feb €1200 
2016 Jan €800 
2016 Mar €2100 

但我想:

2015 Dec €2000 
2016 Jan €800 
2016 Feb €1200 
2016 Apr €1000 
2016 Mar €2100 
+0

你在月份列中有什麼值?分享數據樣本和預期結果請 – mynawaz

+0

@mynawaz更多數據現在可用 – Mick

回答

1

使用此

ORDER BY `year`, MONTH(STR_TO_DATE(`month`, '%b')) 
1

您可以將值轉換爲日期:

order by str_to_date(concat(year, month), '%Y%b))