Teradata 時間函式

miguelmin發表於2008-12-25
時間差異(月):select (date '2003-08-15' - date '2003-01-01') month;
時間差異(天):select date '2003-08-15' - date '2003-01-01';
[@more@]時間差異(秒):select ((time02 / 10000) * 3600 + (time02 / 100 MOD 100) * 60 + (time02 MOD 100)) -
((time01 / 10000) * 3600 + (time01 / 100 MOD 100) * 60 + (time01 MOD 100)) as time_diff
月份操作:select add_months(current_date, 3);
ADD_MONTHS(Date, -2)
add_months(date '2002-01-31', 1);
本月第一天:select date - extract(day from date) + 1
上月最後一天:select date '2008-03-03' - extract(day from '2008-03-03')
decemal轉成time:select cast(cast(cast(TimeFld as format '99:99:99.99') as char(11)) as time(6)) from DBC.EventLog
依照當前時間得到timestamp: select cast(current_date as timestamp(2)) + ((current_time - time '00:00:00') hour to second);
上個星期五:select * from sys_calendar.calendar
where day_of_week = 6 --星期五
and calendar_date between date -6 and date; --上個星期
上週的今天:select * from sys_calendar.calendar where calendar_date = date-7

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16723161/viewspace-1015260/,如需轉載,請註明出處,否則將追究法律責任。

相關文章