sql >> Databáze >  >> RDS >> Oracle

Provádění vnitřního spojení pro více sloupců ve stejné tabulce

Toto vypadá jako správná cesta:

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

Spíše než "hloupý" bych si troufnul, že je to docela standardní dotaz. To také předpokládá, že všechny sloupce budou mít platnou hodnotu. V opačném případě nahraďte všechny INNER JOINy ​​LEFT JOINs




  1. Microsoft SQL DB na MySQL DB

  2. Mysql innoDB stále padá

  3. SQL Challenge/Puzzle:Daná stopa zásobníku – Jak najít horní prvek v každém okamžiku?

  4. Čekat na několik připojení db před spuštěním expresního serveru?