Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL JOIN Wiele złączeń na tej samej tabeli?

potrzebujesz 2 oddzielnych przyłączeń dla każdego kraju/miasta/terytorium. poniżej znajduje się podstawowa składnia, być może trzeba ją nieco zmienić, ponieważ nie przepuściłem jej przez 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 sposoby konwersji liczby na ósemkową w MySQL

  2. Mysql dołącza do dwóch stołów z innym rzędem po lewej stronie i tym samym rzędem po prawej stronie

  3. Replikuj Microsoft SQL do innych baz danych

  4. Znajdź liczbę kolumn EMPTY lub NULL w tabeli MySQL

  5. Wielopoziomowe menu z PHP/MySQL