我必须进行查询以在表中插入数据,从另一个表中选择一些字段并出现此错误:错误代码:1241。操作数应包含1列
查询如下:
INSERT into lezione
(data, ora, punti, istruttore, bike, riserve, puntiAssenzaTempo,
puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti, puntiDisdettaPunti, special)
values (str_to_date('17-02-2014', '%d-%m-%Y'),
(SELECT punti, istruttore, bike, riserve, puntiAssenzaTempo,
puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti, puntiDisdettaPunti, special
FROM SettimanaTipo where giornoSettimana = 1))
在网上搜索我知道SELECT子句不需要括号,所以我删除了它们,查询如下
INSERT into lezione
(data, ora, punti, istruttore, bike, riserve, puntiAssenzaTempo,
puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti, puntiDisdettaPunti, special)
values (str_to_date('17-02-2014', '%d-%m-%Y'),
SELECT punti, istruttore, bike, riserve, puntiAssenzaTempo,
puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti, puntiDisdettaPunti, special
FROM SettimanaTipo where giornoSettimana = 1)
但现在错误是这样的:错误代码:1064。您的SQL语法中有错误;查看与您的MySQL服务器版本对应的手册,以便在“SELECT punti,istruttore,bike,riserve,puntiAssenzaTempo,puntiDisdettaTempo”附近使用正确的语法,在第4行0.001秒
答案 0 :(得分:1)
请改用以下查询:
INSERT into lezione
( data, ora, punti, istruttore, bike, riserve, puntiAssenzaTempo,
puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti,
puntiDisdettaPunti, special)
SELECT str_to_date('17-02-2014', '%d-%m-%Y'), punti, istruttore, bike, riserve,
puntiAssenzaTempo, puntiDisdettaTempo, orarioDisdetta, note, puntiAssenzaPunti,
puntiDisdettaPunti, special
FROM SettimanaTipo WHERE giornoSettimana = 1
如果您只提供12
个列,insert
子句中有11
个列,则会遇到一个问题,这就是您收到错误的原因1 => Error Code: 1241. Operand should contain 1 column(s)
。