gpt4 book ai didi

MySQL INSERT ... SELECT 多行

转载 作者:行者123 更新时间:2023-11-29 06:40:35 25 4
gpt4 key购买 nike

我一直在搜索 MySQL 文档、Google 和 Stackoverflow,但找不到适合我需求的解决方案。

我有 2 张 table :契约(Contract):contract_id、contract_client_id、contract_property_id、contract_tenant_id、contract_startdate、contract_enddate、contract_price

账本:ledger_id、ledger_trans_date、ledger_period、ledger_property_id、ledger_tenant_id、ledger_value

我想用合约表中的一些列填充分类帐,并使用以下语句:

INSERT INTO ledger (ledger_trans_date, ledger_period, ledger_property_id, 
ledger_tenant_id, ledger_value)
VALUES ('01-08-2018', '01-08-2018', (SELECT contract_property_id,
contract_tenant_id, contract_price FROM contract));

但我收到以下错误:错误代码:1136。列计数与第 1 行的值计数不匹配。

我也尝试过这个:

INSERT INTO ledger (ledger_trans_date, ledger_period, ledger_property_id, 
ledger_tenant_id, ledger_value)
VALUES ('01-08-2018', '01-08-2018',
(SELECT contract_property_id FROM contract),
(SELECT contract_tenant_id FROM contract),
(SELECT contract_price FROM contract));

但是我收到以下错误:错误代码:1242。子查询返回超过 1 行。

我希望有人能帮助我并告诉我哪里出错了......如果您需要更多信息,请随时询问。

非常感谢。

最佳答案

这样做:

INSERT INTO ledger (ledger_trans_date, ledger_period, ledger_property_id, 
ledger_tenant_id, ledger_value)
SELECT '2018-08-01', '2018-08-01', contract_property_id,
contract_tenant_id, contract_price FROM contract;

关于MySQL INSERT ... SELECT 多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51794748/

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