Esta es una versión MySQL de las provincias de Sri Lanka => Distritos => Datos relacionados con las ciudades.
Hay tres archivos SQL,
### Estadistas
### Estructura de tablas Sammple con datos
Provincias
identificación | Name_en | Name_si | Name_ta |
---|---|---|---|
1 | Westernn | සස්නාිර | மேல |
2 | Central | මධ් යම | மத்தி |
Distritos
identificación | Provincia_id | Name_en | Name_si | Name_ta |
---|---|---|---|---|
1 | 6 | Ampara | අම්පාර | அம்பாறை |
2 | 8 | anuradhapura | අනුරාධපුරය | அனுராதபுரம் |
Ciudades
identificación | Distrito_id | Name_en | Name_si | Name_ta | Sub_name_en | Sub_name_si | Sub_name_ta | Código postal | Latitud | Longitud |
---|---|---|---|---|---|---|---|---|---|---|
1 | 1 | Akkaraipattu | අක්කරපත්තුව | Nulo | Nulo | Nulo | Nulo | 32400 | 7.2167 | 81.85 |
2 | 1 | Ambagahawatta | අඹගහවත්ත | Nulo | Nulo | Nulo | Nulo | 90322 | 7.4 | 81.3 |
Para evitar que el error innecesario ocurra, comience a importar o ejecute provincias.sql, luego trabaja.sql, por último CITies.sql
Ventajas de latitud y longitud
Aquí está la declaración SQL que encontrará las ubicaciones más cercanas que están dentro de un radio de 25 kilómetros hasta la coordenada 7.358849, 81.280133. Calcula la distancia en función de la latitud/longitud de esa fila y la latitud/longitud objetivo, y luego pide solo filas donde el valor de distancia es inferior a menos de 25, ordena toda la consulta por distancia.
SELECT id, name_en, name_si, name_ta, ( 6371 * ACOS(COS(RADIANS( 7 . 358849 )) * COS(RADIANS(latitude)) * COS(RADIANS(longitude) - RADIANS( 81 . 280133 )) + SIN(RADIANS( 7 . 358849 )) * SIN(RADIANS(latitude)))) AS distance
FROM cities
HAVING distance < 25
ORDER BY distance
Provincias
සිංහල தமிழ 100% 100%
Distritos
සිංහල தமிழ 100% 100%
Ciudades
සිංහල தமிழ 4% 0%