题目: 选择以下SQL的执行结果

系统设定:

NLS_DATE_FORMAT = 'dd-MM-yyyy hh24:mi:ss'
NLS_TIMESTAMP_FORMAT = 'dd-MM-yyyy hh24:mi:ss.ff'

SQL语句:

@select to_timestamp ('26-02-2023 11:22:33.123','dd-MM-yyyy hh24:mi:ss.ff') + 1 from dual

选项:

A. 执行异常 B. 27-02-2023 11:22:33.12 C. 27-02-2023 11:22:33 D. 27-03-2023 11:22:33.123

正确答案: D. 27-03-2023 11:22:33.123

解析:

  1. to_timestamp('26-02-2023 11:22:33.123', 'dd-MM-yyyy hh24:mi:ss.ff') 将字符串 '26-02-2023 11:22:33.123' 转换为时间戳,时间戳格式由 NLS_TIMESTAMP_FORMAT 决定,为 'dd-MM-yyyy hh24:mi:ss.ff'。
  2. + 1 对时间戳进行加1天的操作,结果仍然是时间戳。
  3. NLS_DATE_FORMAT 影响日期的显示格式,但 + 1 操作的结果是时间戳,最终显示结果仍然由 NLS_TIMESTAMP_FORMAT 决定。

因此,正确答案为 D. 27-03-2023 11:22:33.123。

Oracle SQL 时间戳加1天结果解析

原文地址: https://www.cveoy.top/t/topic/mIHs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录