[英]extract date only from given date in oracle sql
提取日期的最佳 Oracle sql 查詢是什么? 輸入條目 - 2020-10-14T07:26:32.661Z,預期 output - 2020-10-14
如果您想要時間分量為午夜的DATE
數據類型,則:
SELECT TRUNC(
TO_TIMESTAMP_TZ(
'2020-10-14T07:26:32.661Z',
'YYYY-MM-DD"T"HH24:MI:SS.FF3TZR'
)
) AS truncated_date
FROM DUAL;
哪個(取決於您的NLS_DATE_FORMAT
)輸出:
| 截斷日期 | |:----------------- | | 2020-10-14 00:00:00 |
(注意: DATE
數據類型具有年、月、日、小時、分鍾和秒組件。無論您使用什么客戶端程序訪問數據庫,都可以選擇不顯示時間組件,但它仍然會存在。)
如果你想要一個YYYY-MM-DD
格式的字符串,那么:
SELECT TO_CHAR(
TO_TIMESTAMP_TZ(
'2020-10-14T07:26:32.661Z',
'YYYY-MM-DD"T"HH24:MI:SS.FF3TZR'
),
'YYYY-MM-DD'
) AS formatted_date
FROM DUAL;
| FORMATTED_DATE | |:------------- | | 2020-10-14 |
db<> 在這里擺弄
規范的方式可能是trunc()
:
select trunc(input_entry)
這假定input_entry
是date
或timestamp
值。
編輯:
如果您的輸入只是一個字符串,請使用字符串操作:
select substr(input_entry, 1, 10)
您也可以輕松地將其轉換為date
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.