Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Wykonywanie łączenia wewnętrznego dla wielu kolumn w tej samej tabeli

To wydaje się być dobrym rozwiązaniem:

SELECT
  A.answer_id
  ,C1.color_name AS favorite_color_name
  ,C2.color_name AS least_favorite_color_name
  ,C3.color_name AS color_im_allergic_to_name
FROM tbAnswers AS A
INNER JOIN tbColors AS C1
  ON A.favorite_color = C1.color_code
INNER JOIN tbColors AS C2
  ON A.least_favorite_color = C2.color_code
INNER JOIN tbColors AS C3
  ON A.color_im_allergic_to = C3.color_code

Zamiast "głupi", zaryzykowałbym, że jest to dość standardowe zapytanie. Zakłada to również, że wszystkie kolumny będą miały prawidłową wartość. W przeciwnym razie zamień wszystkie INNER JOIN na LEFT JOIN




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wykonać plik skryptu .SQL za pomocą c#

  2. Jak wygenerować diagram relacji encji (ER) za pomocą Oracle SQL Developer

  3. Nieoczekiwany wynik mapowania multiset w Oracle SQL

  4. Jak sprawdzić połączenie cassandry z integratorem danych pentaho?

  5. Przykład transakcji autonomicznej Oracle