【问题标题】:MySQL - "Operand should contain 1 column(s)" moving data to other tableMySQL - “操作数应包含 1 列”将数据移动到其他表
【发布时间】:2017-05-23 16:16:16
【问题描述】:

这可能与另一个问题重复,但即使按照答案的指示,我也无法理解如何解决此错误。
我有两个表,第二个应该包含第一个的部分列。
这些是它们的模式(考虑到我遗漏了一些我不需要的列):
第一个表

ID | num | acquisto | dataacquisto | descrizione | modello | ubicazione

第二张表

ID | tipo | data | id_bene | descrizione | modello | ubicazione | importo

我简化了第一个模式,因为我只是在寻找将数据从第一个表移动到第二个表的方法。
问题是我无法使用SELECT 查询设置tipo 字段,但每次运行查询时都应该选择它的值。
我尝试使用此 SQL,但它返回了此错误:

INSERT INTO riepilogo (tipo, data, id_bene, descrizione, modello, ubicazione, importo) VALUES ('CARICO', (SELECT dataacquisto, id, descrizione, modello, ubicazione, acquisto FROM beni));

操作数应包含 1 列

我按照其他问题的提示尝试了其他查询,但没有适合我的解决方案。
非常感谢,对不起我的英语!

【问题讨论】:

    标签: sql select insert move


    【解决方案1】:

    在选择查询本身中包含常量。

    试试这个:

    insert into riepilogo (
        tipo,
        data,
        id_bene,
        descrizione,
        modello,
        ubicazione,
        importo
        )
    select 'CARICO',
        dataacquisto,
        id,
        descrizione,
        modello,
        ubicazione,
        acquisto
    from beni
    

    【讨论】:

    • 完美运行。非常感谢!
    猜你喜欢
    • 2012-12-12
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多