Teradata Unixtime & Timestamp Convert

来源:互联网 发布:淘宝卖白酒可以吗 编辑:程序博客网 时间:2024/06/08 11:35


SELECT  CURRENT_TIMESTAMP   , paypallib.unixtime2timestamp(  paypallib.timestamp2unixtime(CURRENT_TIMESTAMP)  )SELECT *FROM dbc.functionsSHOW FUNCTION  paypallib.timestamp2unixtimeSHOW FUNCTION  paypallib.unixtime2timestampREPLACE FUNCTION PAYPALLIB.unixtime2timestamp(    unixtime  BIGINT)RETURNS TIMESTAMP (0)LANGUAGE SQLDETERMINISTICCONTAINS SQLRETURNS NULL ON NULL INPUTSQL SECURITY DEFINERCOLLATION INVOKERINLINE TYPE 1 RETURN  CAST (DATE '1970-01-01' + (unixtime / 86400) AS TIMESTAMP (0)) + ((unixtime MOD 86400) * INTERVAL '00:00:01' HOUR TO SECOND)   /* unixtime2timestamp */;REPLACE FUNCTION PAYPALLIB.timestamp2unixtime(    ts  TIMESTAMP)RETURNS BIGINTLANGUAGE SQLDETERMINISTICCONTAINS SQLRETURNS NULL ON NULL INPUTSQL SECURITY DEFINERCOLLATION INVOKERINLINE TYPE 1 RETURN  (CAST (ts AS DATE) - DATE '1970-01-01') * 86400 + EXTRACT (HOUR FROM ts) * 3600 + EXTRACT (MINUTE FROM ts) * 60 + EXTRACT (SECOND FROM ts)   /* timestamp2unixtime */;
REPLACE FUNCTION paypallib.month_id(    dt  DATE)RETURNS INTLANGUAGE SQLDETERMINISTICCONTAINS SQLRETURNS NULL ON NULL INPUTSQL SECURITY DEFINERCOLLATION INVOKERINLINE TYPE 1 RETURN  EXTRACT (YEAR FROM ((dt - DATE '1900-01-01') YEAR (3) TO MONTH)) * 12 + EXTRACT (MONTH FROM ((dt - DATE '1900-01-01') YEAR (3) TO MONTH)) + 1          /* month_id */;


0 0
原创粉丝点击