sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL LEFT OUTER JOIN-querysyntaxis

Je moet CROSS JOIN . gebruiken om elke mogelijke combinatie van name . te krijgen uit de eerste tabel met de option van de tweede tafel. Dan LEFT JOIN deze combinatie met de tweede tafel. Iets als:

SELECT 
  t1.id,
  t1.name,
  t2.option,
  t2.value
FROM
(
  SELECT t1.id, t1.name, t2.option
  FROM table1 AS t1
  CROSS JOIN table2 AS t2
) AS t1
LEFT JOIN table2 AS t2  ON t1.id = t2.tbl1_fk
                       AND t1.option = t2.option

SQL Fiddle-demo



  1. Het ophalen van oracle XMLType opgeslagen als binaire XML uit een resultatenset in Java

  2. SQL Server, de misleidende XLOCK &optimalisaties

  3. Migreren naar OpenJDK 11, welke versie van MySql-connector is compatibel voor Java 11?

  4. Lever een voorbereide verklaring met een array