在postgres中,我有一个带有日期列的表.现在postgres允许我以Ymd格式写日期.但我需要d/m/Y格式的日期.怎么改呢?
当我做:
show datestyle;
Run Code Online (Sandbox Code Playgroud)
我明白了:
"ISO, DMY"
Run Code Online (Sandbox Code Playgroud)
并以此格式输入表格中的日期 13/02/2009
但当我再次关闭并打开桌子时,我看到了这一点2009-02-13.JDBC也以这种格式给出了日期.我究竟做错了什么?
小智 10
你也可以使用该命令
set datestyle to [your new datestyle];
Run Code Online (Sandbox Code Playgroud)
在postgreSQL的控制台中.
对您的日期使用to_char函数,如下所示:
select to_char(date_column1, 'Mon/DD/YYYY');
Run Code Online (Sandbox Code Playgroud)
如果可能的话,不要使用DATESTYLE. 它将影响会话中的所有代码,包括存储过程之类的内容,这些代码可能没有预料到,并且可能没有DATESTYLE在其定义中设置显式覆盖。
如果可以,请用于to_char日期输出,并to_timestamp在需要使用任何可能不明确的日期格式(例如D/M/Y. 其余时间使用 ISO 日期。