This is the table structure for the seven tables I'm trying to join into just one:
-- tables: en, fr, de, zh_cn, es, ru, pt_br `geoname_id` INT (11), `continent_code` VARCHAR (200), `continent_name` VARCHAR (200), `country_iso_code` VARCHAR (200), `country_name` VARCHAR (200), `subdivision_1_name` VARCHAR (200), `subdivision_2_name` VARCHAR (200), `city_name` VARCHAR (200), `time_zone` VARCHAR (200) And this is the new table structure, where all data will be stored:
CREATE TABLE `geo_lists` ( `city_id` int (11), -- en.geoname_id (same for all 7 tables) `continent_code` varchar (2), -- en.continent_code (same for all 7 tables) `continent_name` varchar (200), -- en.continent_name (just in english) `country_code` varchar (2), -- en.country_iso_code (same for all 7 tables) `en_country_name` varchar (200), -- en.country_name `fr_country_name` varchar (200), -- fr.country_name `de_country_name` varchar (200), -- de.country_name `zh_country_name` varchar (200), -- zh_cn.country_name `es_country_name` varchar (200), -- es.country_name `ru_country_name` varchar (200), -- ru.country_name `pt_country_name` varchar (200), -- pt_br.country_name `en_state_name` varchar (200), -- en.subdivision_1_name `fr_state_name` varchar (200), -- fr.subdivision_1_name `de_state_name` varchar (200), -- de.subdivision_1_name `zh_state_name` varchar (200), -- zh_cn.subdivision_1_name `es_state_name` varchar (200), -- es.subdivision_1_name `ru_state_name` varchar (200), -- ru.subdivision_1_name `pt_state_name` varchar (200), -- pt_br.subdivision_1_name `en_province_name` varchar (200), -- en.subdivision_2_name `fr_province_name` varchar (200), -- fr.subdivision_2_name `de_province_name` varchar (200), -- de.subdivision_2_name `zh_province_name` varchar (200), -- zh_cn.subdivision_2_name `es_province_name` varchar (200), -- es.subdivision_2_name `ru_province_name` varchar (200), -- ru.subdivision_2_name `pt_province_name` varchar (200), -- pt_br.subdivision_2_name `en_city_name` varchar (200), -- en.city_name `fr_city_name` varchar (200), -- fr.city_name `de_city_name` varchar (200), -- de.city_name `zh_city_name` varchar (200), -- zh_cn.city_name `es_city_name` varchar (200), -- es.city_name `ru_city_name` varchar (200), -- ru.city_name `pt_city_name` varchar (200), -- pt_br.city_name `time_zone` varchar (30) -- en.time_zone (same for all 7 tables) ); I'd like to join them all, using the locale (language) code as prefix for the column names.