date型別是oracle中儲存日期類的一種常用型別,其處理也是在資料庫使用中比較多需要注意的地方。如我們可以使用to_char函式將其轉化為任意時間格式的字串,也可使用to_date函式轉化相應的字串為日期格式。
本篇主要介紹這樣一種使用情況。
問題描述:字段儲存為帶有時分秒格式的日期形式,現需要查詢某天或某日期區間內資料,即查詢條件無時分秒。
問題分析:由於儲存格式自帶時分秒,而當使用between and時查詢某天或日期區間內資料時,實際會查詢到開始時間0點到結束時間0點之間的資料,從而導致查詢資料丟失問題。
解決方案:
一、不少文章提供了這種方式,即為拼接法。形如
select *
from *
where $$$ between
to_date('16/01/2018 00:00:00', 'dd/mm/yyyy hh24:mi:ss') and
to_date('16/01/2018 23:59:59', 'dd/mm/yyyy hh24:mi:ss')
其中
16/01/2018 00:00:00,
16/01/2018 23:59:59
均為程式傳入資料,本方法簡單易懂。
二、使用oracle的to_date、to_char配合使用。形如
select *
from *
where (to_date(to_char($$$,'dd/mm/yyyy'),'dd/mm/yyyy') between
to_date('16/01/2018', 'dd/mm/yyyy') and
to_date('16/01/2018', 'dd/mm/yyyy'))
這種方法十分方便,特分享。
Oracle 資料型別為date 日期查詢技巧
問題描述 字段儲存為帶有時分秒格式的日期形式,現需要查詢某天或某日期區間內資料,即查詢條件無時分秒。select from empwhere to date to char createdate,yyyy mm dd yyyy mm dd to date 2018 03 04 yyyy mm dd ...
oracle資料型別number 為null 判斷
number 可以是整數,也可以是含小數點的小數 操作項 a number 18,2 b number 18,2 相加 1.如果操作項有乙個為 null,相加結果為null a null null 2.正確寫法 nvl a,0 nvl b,0 sum 求和並相加 sum求和 會自動把null值補0 ...
date資料型別的正確格式 說說資料型別 上篇日期
excel內建了多種資料型別,我們今天簡單介紹一下日期這個型別。excel中,日期這一資料型別只能表示公元1900年1月1日開始到公元9999年12月31日為止的日期。不在此範圍內的日期,例如1898年的某一天,只能以文字這一資料型別表示,而不能以日期這一資料型別表示。不能表示有兩重意思 excel...