gpt4 book ai didi

sql - 为什么我的 "INSERT INTO"语句不起作用?

转载 作者:行者123 更新时间:2023-12-02 02:44:41 25 4
gpt4 key购买 nike

我正在使用 Apache derbyDB (db2) 和 SQL Workbench 作为环境。我有 10k 条数据记录,我想创建一个包含维度表和事实表的星型模式。

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) 中,我只想让主键、价格(事实)和 ID 与维度表建立关系,但它不起作用。

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);

我本以为会是这样的结果:

交易编号 |价格 | DATE_ID

1| 2324 | 423

2 | 52315 | 234

但是我在德语中遇到了类似这样的错误:“VALUES 子句必须至少有一个元素。不允许有空元素”

“VALUES-Klausel muss mindestens ein Element enthalten. Leere Elemente sind nicht zulässig。”

非常感谢!翻转

最佳答案

我想你想要 INSERT 。 . .选择:

INSERT INTO DM_PRICE_PAID_RECORDS (TRANSACTION_ID, PRICE, DATE_ID)
SELECT ppr.TRANSACTION_ID, ppr.PRICE, t.DATE_ID
FROM DWH_PRICE_PAID_RECORDS ppr JOIN
DIM_TIME t
ON t.DATE = ppr.DATE_OF_TRANSFER ;

关于sql - 为什么我的 "INSERT INTO"语句不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56137420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com