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

Как да използвам външно съединение на oracle с клауза за филтър where

Много по-добре е да използвате ANSI синтаксиса

SELECT *
  FROM a
       LEFT OUTER JOIN b ON( a.id = b.id and
                             b.val = 'test' )

Можете да направите същото, като използвате и синтаксиса на Oracle, но става малко странно

SELECT *
  FROM a, 
       b
 WHERE a.id = b.id(+)
   AND b.val(+) = 'test'

Обърнете внимание, че и в двата случая пренебрегвам c таблица, тъй като не сте посочили условие за присъединяване. И предполагам, че всъщност не искате да съедините A към B и след това да генерирате декартово произведение с C.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Курсорите на базата данни улавят ли промени в основните данни?

  2. ORA-03113:край на файла на комуникационния канал

  3. org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter ГРЕШКА

  4. Ред на параметрите на съхранената процедура на C# Oracle

  5. PL/SQL процес:проблем с формулировката