2013-05-16 154 views
3

我有一個非常複雜的查詢。我不想從頭開始。所以我在這裏粘貼了一些結果集數據,這些數據需要根據一些約束條件進行格式化。Mysql Query order by

我的查詢如下:..這裏

SELECT 
    GROUP_CONCAT(fix_seq SEPARATOR '-') AS fix_seq, 
    apt, 
    star, 
    trans, 
    fix 
FROM 
    tabe 
GROUP BY 
    star, trans 
ORDER BY 
    seq; 

問題是我需要通過分組星和反式並採取以次按升序order.But的結果,如果我們觀察得到修復的序列我們可以看到連接順序存在問題。

但順序不保留。任何人都可以發現我在哪裏出錯?在此先感謝。

回答

4

添加ORDER BY條款裏面的功能,

GROUP_CONCAT(fix_seq ORDER BY seq SEPARATOR '-') 

基本語法:

GROUP_CONCAT([DISTINCT] expr [,expr ...] 
      [ORDER BY {unsigned_integer | col_name | expr} 
       [ASC | DESC] [,col_name ...]] 
      [SEPARATOR str_val]) 
+0

呵呵非常感謝你 – user2341693

+0

不客氣':''' –

0

使用ORDER BY語句,

GROUP_CONCAT(fix_seq ORDER BY seq SEPARATOR '-') 
AS fix_seq,apt,star,trans,fix 
from tabe 
group by star,trans 
order by seq;