背景
Oracle データベースの TRANSTAMP3 と TRANSTAMP2 の型は varchar ですが、実際に保存される値はタイムスタンプ型です。ここで、2 つの間のミリ秒の差を計算する必要があります。
OracleまたはMySQL
extract(second from (to_timestamp(TRANSTAMP3,'yyyy-mm-dd hh24:mi:ss.ff') - to_timestamp(TRANSTAMP2,'yyyy-mm-dd hh24:mi:ss.ff'))) * 1000
ODPS
データ ウェアハウスは ODPS を使用してデータを保存するため、抽出関数を認識できません。SQL は次のとおりです。
DATEDIFF(to_date(TRANSTAMP3,'yyyy-MM-dd hh:mi:ss.ff3'),to_date(TRANSTAMP2,'yyyy-MM-dd hh:mi:ss.ff3'),'ff3')