【发布时间】:2015-05-12 20:13:11
【问题描述】:
我有下表:
CREATE TABLE group_members(id integer primary key AUTOINCREMENT, group_id integer, member_id integer, FOREIGN KEY (member_id) REFERENCES users(id));
我正在尝试通过从user 表中选择group_id 的值,然后传入member_id 的值,将记录插入group_members 表。
insert into group_members (group_id, member_id)
values (select id from users where code ='12345' and location='multiple', 281);
281 是我要传入的成员 ID。
但我收到以下错误消息:
错误:“选择”附近:语法错误
你能指出我正确的方向吗?
【问题讨论】:
-
我必须检查其文档以查看 SQLite 是否接受值列表中的子查询,但如果接受,那么我希望您需要将子查询括在其自己的括号中。
-
试试这个:
INSERT INTO group_members(group_id, member_id) VALUES ( (SELECT id FROM users WHERE code = '12345' AND location = 'multiple'), 281)(不确定 SQLite 是否支持这个,但这是我要开始的地方)。 -
@JohnBollinger 修复了它。谢谢。