Mysql
 sql >> база данни >  >> RDS >> Mysql

База данни на Geonames:получаване на пълна йерархия (държава -> admin1 -> admin2 -> град) само с една mysql заявка

Не трябва да го изисквате всеки път.

Направих това, като добавих колона „admin1Nameé и „admin2Name“ и актуализирах стойността им с проста SQL заявка.

Тази база данни е много голяма, така че трябва да помислите за изчисляема колона.

РЕДАКТИРАНЕ :ако все още искате да го правите всеки път

SELECT 
    locgeoname.*, 
    loc_countryinfo.name, loc_admin1Codes.name, loc_admin2Codes.name, 
FROM 
    loc_geoname 
INNER JOIN 
    loc_countryinfo ON loc_countryinfo.iso_alpha2 = loc_geoname.country
INNER JOIN 
    loc_admin1Codes ON code = loc_countryinfo.iso_alpha2 + '.' + admin1  
INNER JOIN 
    loc_admin2Codes ON code = loc_countryinfo.iso_alpha2 + '.' + admin1 + '.' + admin2



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL COUNT() и нулеви стойности

  2. Как да търся имена, започващи с A в MySQL?

  3. Как да добавя нов език за съобщенията за грешки на mysql?

  4. Как мога да добавя квадратче за отметка към таблица с данни, което да се използва за изтриване на избрания ред?

  5. Как да ограничите стойност на колона в SQLite / MySQL