2013-05-16 98 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;