插入多行的mysql语句

nnvyjq4y  于 2021-07-29  发布在  Java
关注(0)|答案(2)|浏览(328)

我想把内容放到数据库用户级别>1;
所以我试过这个说法

insert into test4 (id, content) values (
    (select user_id from account where user_rank>=0), 
    'alert'
);

但它一直在说subquery返回多于1行。
在一个语句中放许多行是不可能的吗?
谢谢您。

ssm49v7z

ssm49v7z1#

values() 需要一个仅表示一行的值元组,但子查询返回多行,因此会出现错误。
相反,您可以使用 insert ... select 语法,固定文字值作为第二列:

insert into test4 (id, content)
select user_id, 'alert' from account where user_rank > °
carvr3hs

carvr3hs2#

试试这个

INSERT INTO test4 (id, content)
VALUES SELECT user_id, 'alert' FROM account WHERE user_rank >= 0;

相关问题