今天写了一个sql,多张表关联,其中一个字段受理日期是与另一张表关联后,还要求是另一张表状态为什么什么的条件。sql语句:
“select a.id,a.case_id,e.case_name,e.case_code,(select enddate from ol_apply_process where id=a.id and result =10) as enddate from ol_apply a,ol_case e”,然后报错ORA-01427:单行子查询返回多个行。
解决:
查询中肯定有返回多行的情况,试着在子查询中加入rownum<2,也就是限制返回一行数据。
更改后sql:
“select a.id,a.case_id,e.case_name,e.case_code,(select enddate from ol_apply_process where id=a.id and result =10 and rownum=1) as enddate from ol_apply a,ol_case e”