【问题标题】:Bad date format Oracle SQL错误的日期格式 Oracle SQL
【发布时间】:2014-11-21 08:31:03
【问题描述】:

我遇到了日期格式问题。我需要 max(date1) 的行 我不认为我的查询不正确:

SELECT column1, 
    column2, 
    date1
FROM table
WHERE date1 = (SELECT MAX(date1) FROM table);

当我在 TOAD 的开发环境中使用此查询时,我收到了该结果:

column1;column2;date1

aaaaa;bbbbb;19/09/2014 14:13:21

但是,当我要求我们的基础架构在生产中进行此查询时,他们返回给我该结果:

column1;column2;date1

ccccc;dddddd;14/09/26

日期格式不正确...收到好日期后我该怎么办?我必须在查询中指定格式吗?还是基础设施团队在给我结果时搞砸了?

提前感谢您的帮助

【问题讨论】:

  • date1 列是否具有日期或字符数据类型?

标签: sql oracle date format


【解决方案1】:

date1date 列 - 它没有任何固有格式 - 由客户端和环境决定何时打印。 如果你想控制格式,你需要使用to_char 函数明确地这样做:

SELECT column1, 
       column2, 
       TO_CHAR(date1, 'DD/MM/YYYY hh24:mi:ss')
FROM   table
WHERE  date1 = (SELECT MAX(date1) FROM table);

【讨论】:

  • 确实,它是一个日期列。我不明白的是,这就是为什么我在开发环境中而不是在生产环境中以良好格式获得日期的原因...我将在产品中请求新查询,我会尽快回复您我有结果
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-13
  • 2013-03-02
  • 2013-07-02
  • 1970-01-01
相关资源
最近更新 更多