0

我有一个看起来像下面这个简单示例的表。我想创建一个显示所有记录的选择语句,按每个不同的类别(升序)进行组合,并且每个类别组的成员应按水果名称的字母顺序排列:

ID        Fruit        Category
_________________________________________
1          Apple        200  
2          Pear         200
3          Banana       300
4          Peach        300
5          Mango        300
6          Tomato       600
7          Cucomber     600
8          Jackfruit    300
9          Salad        600 
10         Cranberries  200           

我不知道如何在 SELECT 中组合 ORDER BY 和 GROUP BY。任何帮助将不胜感激。

谢谢。

编辑:这是我期待的输出:

ID        Fruit        Category
_________________________________________
1          Apple        200 
10         Cranberries  200 
2          Pear         200 
3          Banana       300
8          Jackfruit    300
5          Mango        300
4          Peach        300
7          Cucomber     600
9          Salad        600 
6          Tomato       600  
4

4 回答 4

7
select* from table_name order by category asc, fruit
于 2013-01-03T07:09:00.803 回答
2

你可以用这个。

select* from table_name order by column_name asc // use your column name
于 2013-01-03T07:18:26.093 回答
1

如前所述,此处不需要 GROUP BY。GROUP BY 用于聚合行。例如:

SELECT category, count(category) as [count] from myTable GROUP BY category

会给你这样的东西

category    count
--------    -----
200         3
300         4
600         3

您只想按两列排序,所以您只需要

SELECT * FROM myTable ORDER BY Fruit, Category
于 2013-01-03T11:07:29.833 回答
-1
SELECT * 
FROM table_name 
GROUP BY category 
ORDER BY category ASC
于 2013-01-03T07:05:18.837 回答