使用php mysql逐个显示每个类别的每一行

时间:2013-12-15 12:53:10

标签: php mysql

我有以下表结构:基本上它是由agency_id分组。

 id    agency_id    price         type
 1      1001           10000       A 
 2      1002           13000       B
 3      1001           16000       C
 4      1003           11000       A
 5      1002           12000       C
 6      1003           9000        D
 7      1001           15000       A
 8      1002           12000       A  

我想将其显示为以下

 id    agency_id     price        
 1      1001         10000        
 2      1002         13000        
 4      1003         11000        

 3      1001         16000        
 5      1002         12000   
 6      1003         11000

我正在使用以下代码,但它显示了来自1个代理商,然后是第2个代理商的所有属性,等等。

ORDER BY
  CASE properties.agency_id
      WHEN 1001 THEN 1
      WHEN 1002 THEN 2
      WHEN 1003 THEN 3
  END

但它没有给我欲望的结果。任何帮助都会受到影响

此致

1 个答案:

答案 0 :(得分:0)

使用Ranking by Group in MySQL中的解决方案添加rank列,该列在每个组中递增,并将其放在子查询中。然后做:

SELECT *
FROM (subquery) AS x
ORDER by rank, agency_id