以特定方式对数据库进行排序

时间:2012-04-01 22:25:08

标签: php mysql database sorting


我有个问题。我有这样的数据库(mysql):

----------------------
| id | name | letter |
----------------------
| 1  | John |    J   |
| 2  | Joe  |    J   |
| 3  | Jimi |    J   |
| 4  | Kci  |    K   |
| 5  | Key  |    K   |
| 6  | Alan |    A   |
| 7  | Alex |    A   |

我想以这种方式对数据库进行排序(使用PHP):

<ul>
   <li>Letter: J:
      <li>John</li>
      <li>Joe</li>
      <li>Jimi</li>      
   </li>
   <li>Letter: K:
      <li>Kci</li>
      <li>Key</li>
   </li>
   <li>Letter: A:
      <li>Alan</li>
      <li>Alex</li>      
   </li>
</ul>

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

我认为以下查询适用于您的方案

SELECT name,letter FROM table_name GROUP BY letter;

如果您希望对每个类别中的名称进行排序,我认为您可以使用类似

的内容
SELECT name,letter FROM table_name ORDER BY name GROUP BY letter;

编辑:根据字母进行分组,

SELECT name,letter FROM table_name ORDER BY code; 

但是有了这个查询,我不认为内部排序已经完成。

答案 1 :(得分:0)

这就是你要找的东西吗?

SELECT id, name, letter FROM MyTable ORDER BY id ASC