GROUP BY类别和订单类别

时间:2013-01-03 06:55:41

标签: sql sql-server

我的表格看起来像下面这个简单的例子。我想做一个select语句 显示所有记录,由每个不同的类别(升序)填写,每个类别组的成员应按字母顺序按水果名称排序:

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中组合O​​RDER 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 个答案:

答案 0 :(得分:7)

select* from table_name order by category asc, fruit

答案 1 :(得分:2)

你可以使用它。

select* from table_name order by column_name asc // use your column name

答案 2 :(得分: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

答案 3 :(得分:-1)

SELECT * 
FROM table_name 
GROUP BY category 
ORDER BY category ASC