Oracle数据按日期和时间排序

时间:2017-10-14 15:58:43

标签: oracle oracle-sqldeveloper

我正在使用Oracle数据库。以下是设备工作时间表详细信息,始终从早上7:00开始到第二天上午7:00结束(总共24小时)。我需要以相同的方式报告日期明智提升和时间从上午7:00到次日上午7:00。请告知同样的问题。

WorkDate是日期类型,其余两列是varchar2类型

'\0'

2 个答案:

答案 0 :(得分:2)

唯一的问题是7:25位于字母表中的12:35之后。您需要07:25。请使用LPAD

select *
from mytable
order by workdate, lpad(fromtime, 5, '0');

答案 1 :(得分:1)

将日期与from时间连接,然后转换为日期以对结果集进行排序。

select * from tt
order by to_date(to_char(work_date, 'mm/dd/yyyy') || ' ' || from_date, 'mm/dd/yyyy hh24:mi')
/

最简单的方法是将FROM和TO存储为日期时间,但毫无疑问,为什么您的应用程序需要以艰难的方式执行操作。