mel*_*bic 2 database postgresql
当我尝试执行select语句时,我总是会收到以下错误:
错误:用作表达式的子查询返回的多行
只有只有一个结果才有效.为什么以及如何修复?
SELECT name from person p where
id = ( select prs from leader
where age(leader.lastcourse) > '1 year');
Run Code Online (Sandbox Code Playgroud)
您正尝试从似乎返回多个ID的选择中分配一个特定ID.OrbMan的解决方案将从子查询中随机获取第一个ID.如果您想要满足子查询条件的所有ID,
SELECT name from person p where
id IN ( select prs from leader
where age(leader.lastcourse) > '1 year');
Run Code Online (Sandbox Code Playgroud)
Mark使用JOIN而不是子查询的方法也有效.