Я бегу этот SQL на Oracle (Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production):Oracle создать таблицу с виртуальной колонки
CREATE TABLE R_SEQUENCES_COUNT1
(
DS_ID NUMBER,
LINE_TIME TIMESTAMP(6),
DAY_ID DATE GENERATED ALWAYS AS (TRUNC(LINE_TIME)),
HOUR_ID DATE GENERATED ALWAYS AS (TRUNC(LINE_TIME,'HH24')) ,
MINUTE_ID DATE GENERATED ALWAYS AS (TRUNC(LINE_TIME,'MI')) ,
SECOND_ID DATE GENERATED ALWAYS AS (LINE_TIME),
R_ID NUMBER,
SEQUENCE_ID NUMBER
)NOLOGGING
TABLESPACE TWC_DATA_SPACE
PARTITION BY LIST (DS_ID)
SUBPARTITION BY LIST(DAY_ID)
(PARTITION DS_ID_OTHER VALUES (DEFAULT)
(SUBPARTITION DS_ID_OTHER_DAY_ID_OTHER VALUES (DEFAULT)))
и получить эту ошибку:
Error at Command Line:8 Column:40
Error report:
SQL Error: ORA-54016: Invalid column expression was specified
что не так?
литье - проблема, потому что она вокруг даты, и мне нужна дата без раунда. – igreen
@igreen затем используйте второе решение. 'DATE' имеет только второе разрешение. так что вы хотите получить точную копию атрибута 'line_time'? – DazzaL
в second_id Я хочу удалить миллисекунды. – igreen