sql >> Database teknologi >  >> RDS >> Mysql

MySQL JOIN Flere Joins på samme bord?

du skal bruge 2 separate joinforbindelser for hvert land/by/territorium. nedenfor er den grundlæggende syntaks, du skal muligvis ændre den lidt, da jeg ikke har sat den gennem en parser:

SELECT people.first_name AS "First Name", people.last_name AS "Last Name", 
countries1.name AS "Country1", territories1.name AS "Territory1", cities1.name AS "City1", 
countries2.name AS "Country2", territories2.name AS "Territory2", cities2.name AS "City2"
FROM adb_people AS people
JOIN root_cities AS cities1 ON people.city1 = cities1.id
  AND people.city2 = cities1.id
JOIN root_territories AS territories1 ON people.prov_state1 = territories1.id
  AND people.prov_state2 = territories1.id
JOIN root_countries AS countries1 ON people.country1 = countries1.id
JOIN root_cities AS cities2 ON people.city2 = cities2.id
  AND people.city2 = cities2.id
JOIN root_territories AS territories2 ON people.prov_state2 = territories2.id
  AND people.prov_state2 = territories2.id
JOIN root_countries AS countries2 ON people.country2 = countries2.id


  1. Hvordan justify_interval() virker i PostgreSQL

  2. Brug af RStudio med en ikke-systemversion af unixODBC Driver Manager

  3. SELECT-forespørgsel returnerer 1 række fra hver gruppe

  4. MySQL-forespørgselsperioder og værdien af ​​maksimalt fald i forhold til foregående maksimumværdi