前一陣子需要修複一些資料要出腳本,對資料庫的查找和修改操作比較多,表中有一個字段是timestamp類型,而且要用這個字段作為條件查找資料,怎麼友善的操作這個字段呢?
(注:
t_table 表
begin_time 字段:timestamp類型)
select t.* from t_table t where cast(t.begin_time as DATE) >= to_date('2015-01-10 08:00:01','yyyy-mm-dd hh24:mi:ss') ;
其實就是将timestamp用cast轉換成date類型,再和to_date('時間字元串','時間格式')比較,這樣我就可以直接寫一個時間字元串(例如:2015-01-10 08:00:01)就ok了。
再來說說插入語句:(假設就增加這一個字段,主鍵什麼的先忽略)
insert into t_table(begin_time) values (CAST(to_date('2015-06-06 10:38:22','yyyy-mm-dd hh24:mi:ss')as timestamp));
其實就是将字元串轉換成date類型,再将這個date類型資料用CAST轉換成表中需要的timestamp類型資料。
總結:CAST 就是進行類型轉換的,
CAST
converts values from one data type to another.(官方文檔這樣解釋)。
這裡隻是針對時間類型進行了一些轉換,cast還可以對其他資料類型轉換。