Oracle
 sql >> Datenbank >  >> RDS >> Oracle

ORA-01799:Eine Spalte darf nicht durch Outer-Join mit einer Unterabfrage verbunden werden

Sie können das umschreiben, indem Sie die Unterabfrage so verschieben, dass sie nicht mit einer äußeren Verknüpfung versehen ist:

select Count(C.setid)
  from mycustomer C
       left outer join (select *
                          from mycustoption co
                         where co.effdt <= (select Max(COI.effdt)
                                              from mycustoption COI
                                             where COI.setid = co.setid
                                               and COI.cust_id = co.cust_id
                                               and COI.effdt <= sysdate)) co
                    on ( C.setid = CO.setid
                         and C.cust_id = CO.cust_id )