oracle 10gで
varcharのカラムに日付と時刻が以下のように保存されているのですが、
これをsubstrで文字を区切って日付型に変換しております。
↓カラムに保存されている文字列データ
20161115 001024000
↓日付型に変換
SQL
1TO_DATE( 2 SUBSTR(TABLE1.WORK_DATETIME,1,4) || '-' || 3 SUBSTR(TABLE1.WORK_DATETIME,5,2) || '-' || 4 SUBSTR(TABLE1.WORK_DATETIME,7,2) || ' ' || 5 SUBSTR(TABLE1.WORK_DATETIME,10,2) || ':' || 6 SUBSTR(TABLE1.WORK_DATETIME,12,2) || ':' || 7 SUBSTR(TABLE1.WORK_DATETIME,14,2) , 8 'YYYY-MM-DD HH24:MI:SS' ) AS WORK_DATETIME
長いっ!!!
どうにかもっとSQLを短く、そして処理速度が早くできる方法はないでしょうか?
いまのところこのままストアドプロシージャを作成しようかと思っているのですが、なにか良いアイデアがあればよろしくお願いします。

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/14 23:53
2016/11/15 00:09
2016/11/15 00:15
2016/11/15 00:32
2016/11/15 00:59