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

условно присъединяване към оракул

Следният резултат:

<предварителен код>| TAB1_COL1 | TAB1_COL2 | LKP_COL3 ||-----------|-----------|----------|| 10 | 101 | 50 || 11 | 102 | 50 || 12 | 101 | 99,99 || 13 | 103 | 40 || 13 | 103 | 60 || 14 | 104 | 100 || 15 | 108 | 20 || 15 | 108 | 80 || 16 | 102 | 99,99 |

е произведен от тази заявка:

SELECT DISTINCT tab1.tab1_col1, tab1.tab1_col2, COALESCE(lkp1.lkp_col3, lkp2.lkp_col3, 99.99) "LKP_COL3"FROM tab1 LEFT JOIN lkp1 ON tab1.tab1_col1 =lkp1.lkp_col1 И tab1.tab1_col2 =lkp1 .lkp_col2 И lkp1.lkp_col4 ='ИЗБЕРИ' ЛЯВО ПРИСЪЕДИНЯВАНЕ lkp1 lkp2 НА tab1.tab1_col1 =lkp2.lkp_col1 И lkp2.lkp_col4 ='ИЗБЕРИ'ПОРЪЧКА ПО tab1.tab1_col1 , tab1.tab1_col2; 

DISTINCT беше добавен, защото второто ляво (външно) съединение създава нежелано повторение в изхода.

вижте този sqlfiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Group By - броене на записи на месец/година, грешка при вмъкване - НЕ Е ВАЛИДЕН МЕСЕЦ

  2. Преобразувайте String ISO-8601 дата в типа данни за времеви печат на Oracle

  3. Как да ИЗБЕРЕТЕ от колона тип обект в Oracle 11g?

  4. Как да получите списък на всички материализирани изгледи в oracle

  5. to_date грешка при използване на substr