Oracle中的时间戳排序顺序

Dim*_*ima 3 sorting oracle timestamp

按时间戳排序时,我注意到了一些奇怪的排序顺序.首先,它按时间戳的时间部分排序,然后,对于具有相同时间的记录,用于排序的日期.

对我来说,这看起来完全错了.有没有办法告诉Oracle按日期排序然后按时间排序?

谢谢.

字段定义为TIMESTAMP(6),没有时区.这是排序结果:

10-JAN-11 11.18.36.368000000 AM
09-JAN-11 11.18.33.700000000 AM
08-JAN-11 11.18.33.704000000 AM
07-JAN-11 11.18.33.700000000 AM
06-JAN-11 11.17.40.705000000 AM
05-JAN-11 11.17.42.611000000 AM
04-JAN-11 11.17.40.723000000 AM
02-JAN-11 04.45.09.553000000 PM
01-JAN-11 04.45.08.447000000 PM
31-DEC-10 04.45.08.447000000 PM
30-DEC-10 04.35.22.153000000 PM
29-DEC-10 04.30.25.334000000 PM
12-JAN-11 12.00.00.000000000 AM
11-JAN-11 12.00.00.000000000 AM
10-JAN-11 12.00.00.000000000 AM
09-JAN-11 12.00.00.000000000 AM
08-JAN-11 12.00.00.000000000 AM
07-JAN-11 12.00.00.000000000 AM
Run Code Online (Sandbox Code Playgroud)

这是查询:

select period_end from table_name where entity_id=102167 order by period_end desc;
Run Code Online (Sandbox Code Playgroud)

Rob*_*ijk 8

迪马,

您的时间戳格式显示时间戳的所有组件,除了一个:世纪.你的最后六行必须来自上个世纪.

问候,
Rob.

  • 首先,我认为这是一个笑话,但你是对的! (2认同)