SELECT * , group_concat( '  ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , '  ' ),group_concat('  ' , `order_id` , '  ') FROM `sale_orders` WHERE `shipments` =0 AND `number` =1 GROUP BY group_concat( '  ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , '  ' )我想要按照group_concat( '  ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , '  ' )这个统计出来的字段排序,请问应该怎么做呢??

解决方案 »

  1.   

    SELECT * , group_concat( ' ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , ' ' ) as order1,group_concat(' ' , `order_id` , ' ') FROM `sale_orders` WHERE `shipments` =0 AND `number` =1 GROUP BY group_concat( ' ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , ' ' ) order by order1
      

  2.   


    select * from (
        SELECT * , 
          group_concat( ' ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , ' ' ) as filed1,
          group_concat(' ' , `order_id` , ' ') as filed2 
          FROM `sale_orders` 
          WHERE  `shipments` =0 
          AND `number` =1 
     
    ) a
    group by filed1
    order by filed1 
      

  3.   

    shahewangzi的语句报错:#1111 - Invalid use of group function
    Tottyandbaty的语句:统计的结果全在一条记录里面了谢谢两位大的解答
      

  4.   

    两个人都把你的原始 sql 改了,你都看不出来吗?
      

  5.   

    xuzuning大大,我知道改了啊,我是不知道怎么按统计出来的字段排序
      

  6.   

    我那个语句给错了
    下面这个是我用的语句SELECT * , group_concat( '  ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , '  ' ),group_concat('  ' , `order_id` , '  ') FROM `sale_orders` WHERE `shipments` =0 AND `number` =$id GROUP BY `recipient-name` , `ship-address-1` 
    我就是想按照group_concat( '  ' , concat_ws( ' X ', `sku` , `quantity-purchased` )这个字段来排序
      

  7.   

    SELECT * , group_concat( ' ' , concat_ws( ' X ', `sku` , `quantity-purchased` ) , ' ' ) as str ,
    group_concat(' ' , `order_id` , ' ') FROM `sale_orders` 
    WHERE `shipments` =0 AND `number` =$id 
    GROUP BY `recipient-name` , `ship-address-1`  
    ORDER BY  str