Oracle
 sql >> база данни >  >> RDS >> Oracle

SQL едноредова подзаявка връща повече от един ред

Вместо

WHERE <field_name> = (SELECT ...

Използвайте

WHERE <field_name> IN (SELECT ...

Във вашата заявка има 5 условия за промяна.

UPD Също така вашата заявка е еквивалентна на

SELECT P.NAME
FROM DBS_PERSON P
     join DBS_ACTSAS AA  on P.PERSON_ID = AA.PERSON_ID
     join DBS_PLAYSIN PI on AA.CHARACTER_ID = PI.CHARACTER_ID
     join DBS_SERIE S    on PI.SERIE_ID = S.ID
WHERE S.ID = '1';



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Корелирана подзаявка, работеща по различен начин за Oracle 12c и 11g

  2. Java:Връщане на XMLType данни от StoredProcedure, използване на ojdbc6.jar xdb6.jar xmlparserv2.jar за взаимодействие между Java и PLSQL

  3. връзка с базата данни на oracle в web.config asp.net

  4. Получаване на неизползвани уникални стойности в SQL таблица

  5. Свързването на int64 (SQL_BIGINT) като параметър на заявката причинява грешка по време на изпълнение в Oracle 10g ODBC