次のクエリは成功します。
SELECT INTERVAL '00:00:00.000000' HOUR TO SECOND(6)
FROM DUAL;
以下は失敗します:
SELECT INTERVAL time_field HOUR TO SECOND(6) -- time_field is a VARCHAR2(15)
FROM some_table;
次のエラーがあります:
ORA-00923: FROM keyword not found where expected
2番目のクエリを修正してHOURTOSECOND INTERVALをプルバックするにはどうすればよいですか?
私が試してみると:
SELECT cast(time_field AS INTERVAL HOUR TO SECOND(6))
FROM some_table
私は次のようになります:
ORA-00963: unsupported interval type
テスト設定:
CREATE TABLE some_table (
time_field VARCHAR2(50)
);
INSERT ALL
INTO some_table (time_field) VALUES ('10:00:00.000000')
INTO some_table (time_field) VALUES ('12:00:00.000000')
INTO some_table (time_field) VALUES ('15:00:00.000000')
INTO some_table (time_field) VALUES ('17:00:00.000000')
INTO some_table (time_field) VALUES ('20:00:00.000000')
INTO some_table (time_field) VALUES (NULL)
SELECT * FROM DUAL;