我有下表:
CREATE TABLE group_members(id integer primary key AUTOINCREMENT, group_id integer, member_id integer, FOREIGN KEY (member_id) REFERENCES users(id));
我正在尝试通过从group_members
表中选择group_id
的值,然后传入{{1}的值,将记录插入到user
表中}。
member_id
其中281是我试图传递的成员ID。
但是我收到以下错误消息:
你能指出我正确的方向吗?错误:靠近“select”:语法错误
答案 0 :(得分:1)
子查询必须写在括号中。查询中的括号已经属于VALUES子句,因此您需要另一对:
INSERT INTO group_members (group_id, member_id)
VALUES ((SELECT id FROM users WHERE code ='12345' AND location='multiple'), 281);
或者,使用另一种使用查询而不是VALUES子句的INSERT语句:
INSERT INTO group_members (group_id, member_id)
SELECT id, 281 FROM users WHERE code ='12345' AND location='multiple';