2015-10-11 135 views
1

我試圖通過對數據庫中的記錄進行分組來統計它們的數量。這工作正常,但是當我嘗試排序時,它通過與想要的方法不同的方法來排序。示例結果:mysql by count - 按值排序

Question - Answer - Count 

Q1 - A1 - 1 

Q2 - A2 - 11 

Q3 - A3 - 2 

結果通緝:我希望在2-9之後11,而不是之前。查詢很簡單:

SELECT Question, Answer, count(*) as `Count` GROUP BY Question, Answer ORDER BY Question, Answer 

排序的另一個例子是,MySQL的種類一樣,1,11,118,12,2,3在那裏我期待像1,2,3,11的增加值, 12118

回答

0

你已經把你的查詢

ORDER BY Question, Answer 

如果你想11來2後,那麼可以肯定你想

ORDER BY Count 
1

TR y此查詢

SELECT Question, Answer, count(*) as `Count` 
FROM table 
GROUP BY Question, Answer 
ORDER BY count(*) ASC 
0

問題出現,我試圖按字符值而不是整數值排序?我必須把答案作爲一個整數,然後它正確地排序。這裏是工作的查詢:

SELECT Question, Answer, count(*) as `Count` GROUP BY Question, Answer ORDER BY Question, CAST(answer AS SIGNED INTEGER) 

在這裏找到了答案: Sorting varchar field numerically in MySQL