[英]SQL How do I extract time from a date to HH:MI:SS PM/AM?
我想將日期格式更改為SQL Oracle中的HH:MI:SS PM / AM格式。
我想在這種情況下使用它:
當to_char(a.dtime,'HH:MI:SS')> = 12:00:00時,則to_char(a.dtime,'HH:MI:SS PM')否則以null結尾
但SQL不想顯示所有to_char時間> 12:00,而是僅顯示12:%%:%%的時間。
它不適用於to_date。 有什么建議么? 非常感謝。
您可以使用TO_CHAR( datetime, format )
格式化DATE
列。 格式選項在此處給出。
這將為您提供日期值的時間部分(12小時制加上AM / PM):
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.