我的表格看起来像下面这个简单的例子。我想做一个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中组合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
答案 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