我有一个带有返回多行的子查询的查询。
我有一个带有列表的表格和一个带有用户的表格。我在这两个表之间创建了一个多对多表,称为 list_user。
LIST
id INTEGER
list_name TEXT
list_description TEXT
USER
id INTEGER
user_name TEXT
LIST_USER
id INTEGER
list_id INTEGER
user_id INTEGER
我的子查询查询
SELECT * FROM user WHERE id = (SELECT user_id FROM list_user WHERE list_id = 0);
子查询有效(我在代码中使用它,所以 0 实际上是一个变量)并且它返回多行。但是上面的查询只返回一行,这很合乎逻辑;我检查 id 是否等于某个值,它只检查子查询的第一行。
如何更改我的语句,以便在上部查询中获得多行?