簡體   English   中英

SQL如何提取日期到HH:MI:SS PM / AM的時間?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM