Я работаю с Apache derbyDB (db2) и SQL Workbench в качестве среды.У меня есть 10 тыс. Записей данных, и я хочу создать звездообразную схему с таблицами измерений и таблицей фактов.
dwh_price_paid_records = data table
dm_price_paid_records = data mart table (facts table)
dim_time = data mart table (dimension)
DWH_PRICE_PAID_RECORDS.TRANSACTION_ID = VARCHAR(50)
DWH_PRICE_PAID_RECORDS.PRICE = INTEGER
DWH_PRICE_PAID_RECORDS.DATE_OF_TRANSFER = DATE
DIM_TIME.DATE_ID = Primary key of dim_time (autoincrement start with 1 increment by 1)
DM_PRICE_PAID_RECORDS.DATE_ID = Foreign key NOT NULL from DIM_TIME
В таблице фактов (DM_PRICE_PAID_RECORDS) мне нужен только первичный ключ, цена(факт) и идентификатор, чтобы иметь отношение к таблице измерений, но она не работает.
INSERT INTO DM_PRICE_PAID_RECORDS (TRANSACTION_ID, PRICE, DATE_ID) VALUES (SELECT TRANSACTION_ID FROM DWH_PRICE_PAID_RECORDS, SELECT PRICE FROM DWH_PRICE_PAID_RECORDS, SELECT DATE_ID FROM DIM_TIME join DWH_PRICE_PAID_RECORDS on DIM_TIME.DATE = DWH_PRICE_PAID_RECORDS.DATE_OF_TRANSFER WHERE DIM_TIME.DATE =
DWH_PRICE_PAID_RECORDS.DATE_OF_TRANSFER);
Я бы ожидал, что это будет результатом:
TRANSACTION_ID |ЦЕНА |DATE_ID
1 |2324 |423
2 |52315 |234
Но я получаю сообщение об ошибке на немецком языке, говорящее что-то вроде: "VALUES-предложение должно содержать как минимум один элемент. Emtpy элементы не допускаются"
"VALUES-Klausel muss mindestens ein Element enthalten. Leere Elemente sind nicht zulässig. "
Большое вам спасибо!Flippi