按时间戳排序时,我注意到了一些奇怪的排序顺序。首先,它按时间戳的时间部分排序,然后,对于具有相同时间的记录,用于排序的日期。
对我来说,这看起来完全错了。有没有办法告诉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
以下是查询:
select period_end from table_name where entity_id=102167 order by period_end desc;
答案 0 :(得分:8)
迪马,
您的时间戳格式显示时间戳的所有组成部分,除了一个:世纪。你的最后六行必须来自上个世纪。
的问候,
罗布。
答案 1 :(得分:0)
您可能有timestamp with timezone
。