sqlite – SQL多行子查询
发布时间:2020-12-12 19:06:16 所属栏目:百科 来源:网络整理
导读:我有一个表研究我执行SELECT. 然后我需要在返回的记录集上执行进一步的SELECT.我试过这个(简化为了清晰): SELECT * FROM StudiesWHERE Id = '2' OR Id = '3' OR Id = '7'; SELECT * FROM StudiesWHERE (Name = 'Test') AND Id IN (SELECT * FROM Studies WH
我有一个表研究我执行SELECT.
然后我需要在返回的记录集上执行进一步的SELECT.我试过这个(简化为了清晰): SELECT * FROM Studies WHERE Id = '2' OR Id = '3' OR Id = '7'; SELECT * FROM Studies WHERE (Name = 'Test') AND Id IN (SELECT * FROM Studies WHERE Id = '2' OR Id = '3' OR Id = '7'); 但我不断收到以下SQL错误:
我哪里错了?如果从我的代码中看不出来 – 我对数据库编程比较陌生. 谢谢 您不能在IN(…)子查询中返回多个列.您必须将*(返回所有列)更改为ID.但是您的查询不需要子查询,您只需将ID添加到第一个查询即可.由于性能原因,您通常希望尽可能避免使用子查询.SELECT * FROM Studies WHERE Name = 'Test' AND ID IN ('2','3','7') 或者如果你想保留你的结构: SELECT * FROM Studies WHERE (Name = 'Test') AND ID IN (SELECT ID FROM Studies WHERE ID = '2' OR ID = '3' OR ID = '7'); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |