SQL 使用 Oracle SQL 对日历周期进行排序

标签 sql oracle date sql-order-by

我是sql新手,有疑问,希望你能帮助我。

如何按日历周期排序以下数据。数据类型为 VarChar2

Jan-2020
Feb-2020
Mar-2019
Jan-2019
Feb-2019
Mar-2020

提前谢谢您!

最佳答案

您可以将字符串转换为日期 to_date() 并使用它进行排序:

order by to_date(mycol, 'mon-yyyy')

如果数据库或 session 的语言不是英语,则需要一个附加参数,以便 Oracle 能够理解月份名称:

    order by to_date(mycol, 'mon-yyyy', 'nls_date_language = american')

关于SQL 使用 Oracle SQL 对日历周期进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60884809/

相关文章:

mysql - 使用 WHERE 时在 SQL Join 中包含 NULL

php - 用css设计php输出表

oracle - 为什么 Oracle 应该使用索引却使用全表扫描?

c# - 使用 LINQ 选择本周

java - 将日历日期格式设置为受时区影响的 dd-MM-yyyy

mysql - 在 2 个表上选择没有返回结果?

mysql - SQL If 语句/select into 存储过程

javascript - JS日期转换

php sql 删除按钮

sql - 从表中选择 MIN 和 MAX 比预期的要慢