Sql 按区域(北、东、西、南)对邮政编码进行分组
我有法国的这类数据,我想使用SQL将这些zipcodes分为4类:南/北/东/西。这可能吗? 我可以说,如果纬度>48度,经度>2.5度,这个区域就叫做东北。如果纬度>48,经度Sql 按区域(北、东、西、南)对邮政编码进行分组,sql,Sql,我有法国的这类数据,我想使用SQL将这些zipcodes分为4类:南/北/东/西。这可能吗? 我可以说,如果纬度>48度,经度>2.5度,这个区域就叫做东北。如果纬度>48,经度 我可以说,如果纬度>48度,经度>2.5度,这个区域就叫做东北。如果纬度>48,经度48和经度,您确定北、东、南和西的标准是什么?这是一个特定的纬度和经度决定的吗?您如何确定将其标记为北/南vs东/西?这是可能的,但你需要决定如何确定……我不知道可以使用什么标准。我知道法国最北部的城市是布雷沙丘,纬度51.0833,经
我可以说,如果纬度>48度,经度>2.5度,这个区域就叫做东北。如果纬度>48,经度48和经度,您确定北、东、南和西的标准是什么?这是一个特定的纬度和经度决定的吗?您如何确定将其标记为北/南vs东/西?这是可能的,但你需要决定如何确定……我不知道可以使用什么标准。我知道法国最北部的城市是布雷沙丘,纬度51.0833,经度2.5167。这座城市位于最东边,纬度48.9833,经度8.1833。位于最南端的城市纬度为42.3603,经度为2.52028。最西边的城市纬度为48.391541,经度为-4.788666。我不知道如何处理这个问题。这很奇怪,因为你试图根据纬度确定N/s,根据经度确定E/W。。。您需要回答“哪一点的N/E/S/W(纬度和经度)?另外,东北、西北、东南和西南如何评估这两个点?如果您不知道哪个邮政编码属于哪个地区,那么SQL就没有多少希望了。不过我想到了画面。看看这是否有帮助
+---------+------------------------+------------+-------------------+
| zipcode | city | latitude | longitude |
+---------+------------------------+------------+-------------------+
| 13210 | Saint-Rémy-de-Provence | 43.788652 | 4.831343 |
| 13800 | Istres | 43.506196 | 4.99036599999999 |
| 37000 | Tours | 47.3951208 | 0.693232599999988 |
| 78480 | Verneuil-sur-Seine | 48.9796889 | 1.97723380000002 |
| 95150 | Taverny | 49.0243127 | 2.22085059999995 |
| 91300 | Massy | 48.73027 | 2.28712500000006 |
| 69800 | Saint-Priest | 45.7168398 | 4.92662189999999 |
| 17870 | breuil magne | 45.9840161 | -0.9589952 |
| 76100 | Rouen | 49.4341826 | 1.08828110000002 |
| 38500 | Voiron | 45.3520189 | 5.57151959999999 |
| 31500 | Toulouse | 43.6010501 | 1.46503830000006 |
| 78400 | Chatou | 48.9027528 | 2.15630869999995 |
| 94000 | Créteil | 48.7968017 | 2.44876620000002 |
| 69700 | Loire-sur-Rhône | 45.5604967 | 4.80611650000003 |
+---------+------------------------+------------+-------------------+
select . . . ,
(case when latitude >= 48 and longitude > 2.5
then 'Northeast'
when latitude <= 48 and longitude > 2.5
then 'Southeast'
when latitude > 48 and longitude <= 2.5
then 'Northwest'
when latitude < 48 and longitude <= 2.5
then 'Southwest'
end)