我遇到日期格式问题。我需要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
但是,当我要求我们的基础设施在生产中进行此查询时,他们将结果返回给我:
列1;列2;日期1
CCCCC; DDDDDD; 14/09/26
日期格式不好......我能做什么才能收到好日期?我是否必须在查询中指定格式?或者,infra团队在给我结果的同时搞砸了某些事情?
提前感谢您的帮助
答案 0 :(得分:3)
date1
是一个date
列 - 它没有任何内在格式 - 由客户端和环境决定何时打印它。
如果要控制格式,则需要使用to_char
函数明确地执行此操作:
SELECT column1,
column2,
TO_CHAR(date1, 'DD/MM/YYYY hh24:mi:ss')
FROM table
WHERE date1 = (SELECT MAX(date1) FROM table);