我想在SQL Oracle中将日期的格式更改为HH:MI:SS PM/AM格式。
我想在这样的情况下使用它:
case when to\u char(a.dtime,'HH:MI:SS')
但是SQL不想显示所有to\u char时间
并且它不适用于to\u date。有什么建议吗?提前非常感谢。
您可以使用TO_CHAR(日期时间,格式)
来格式化DATE
列。这里给出了格式选项。
这将为您提供日期值的时间部分(12小时时钟加上上午/下午):
SELECT TO_CHAR( column_name,'HH:MI:SS AM')
FROM your_table
编辑-寻址更新
您可以执行以下操作:
SELECT CASE WHEN TO_NUMBER( TO_CHAR( a.dtime_appl_creation, 'HH24' ) ) >= 12
THEN TO_CHAR( a.dtime, 'HH:MI:SS PM' )
END AS "date"
FROM table_name
SELECT to_char(sysdate,'dd/MM/yyyy hh:mi:ss am')
FROM dual
case
when a.dtime_appl_creation-trunc(a.dtime_appl_creation) > 0.5 then 'after noon'
else 'before noon'
end