使用两个或更多过滤器对数据进行排序/排序

时间:2014-11-06 09:30:40

标签: mysql database sorting field sql-order-by

我如何使用两个字段对下面的数据进行排序或排序:

科目 - 年级 - 学期

eng1 - 第一年 - 第一学期

eng2 - 第一学年 - 第二学期

eng3 - 第二年 - 第一学期

eng4 - 第二年 - 第二学期

math1 - 第一学年 - 第一学期

math2 - 第一学年 - 第二学期

math3 - 第二年 - 第一学期

math4 - 第二年 - 第二学期

以这样的方式,数据(或主题)按以下方式排序: 第一学期第一学期 第一学年第二学期 第二学年第一学期 第二学年第二学期

简而言之,我期待以下输出:

科目 - 年级 - 学期

eng1 - 第一年 - 第一学期

math1 - 第一学年 - 第一学期

eng2 - 第一学年 - 第二学期

math2 - 第一学年 - 第二学期

eng3 - 第二年 - 第一学期

math3 - 第二年 - 第一学期

eng4 - 第二年 - 第二学期

math4 - 第二年 - 第二学期

有人可以帮我这个吗?

3 个答案:

答案 0 :(得分:2)

您可以使用按操作员排序

对多个字段进行排序

示例

select * from result order by year,sem 

答案 1 :(得分:1)

ORDER BY条款是你的朋友。

SELECT * FROM mytable ORDER BY yearlevel,semester

您还可以升序或降序排序:

SELECT * FROM mytable ORDER BY yearlevel,semester DESC -- sorts semester descending

答案 2 :(得分:1)


您可以执行以下操作:

Select * from your_table_name ORDER BY year_level, semester