Obecnie tworzę aplikację, aby pokazać wszystkie geotagowane drzewa w określonym mieście. Główne kolumny używam do pobierania danych z tabeli są następującePobierz wszystkie punkty z bazy danych wewnątrz obwiedni współrzędnych północno-wschodniej i południowo-zachodniej w MySQL
+-----------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+-------------+------+-----+---------+-------+
| tree_geotags_id | int(11) | NO | PRI | None | |
| lattitude_dl | double(9,7) | YES | | NULL | |
| longitude_dl | double(9,7) | YES | | NULL | |
+-----------------+-------------+------+-----+---------+-------+
tabela ma ponad 158 tysięcy wierszy.
Obecnie używam następujące kwerendy, aby moje wyjście,
SELECT gt.tree_geotags_id, gt.latitude_dl, gt.longitude_dl,
SQRT(
POW(69.1 * (gt.latitude_dl - [ center_lat ]), 2) +
POW(69.1 * ([ center_lon ] - gt.longitude_dl) * COS(gt.latitude_dl/57.3), 2)
) AS distance
FROM tree_geotags_t gt
HAVING distance < 0.4 ORDER BY distance
co to jest, to pobiera wszystkie rekordy w promieniu 0,4. Używam wywołania ajax, aby pobrać dane, za każdym razem, gdy zmienia się środkowa współrzędna mapy (na panoramach lub powiększeniach mapy), konwertuj pobrane dane do formatu geojsona, a następnie załaduj je na mapę jako warstwę. Kwestia, którą mam z tym, jest w miejscach, gdzie występuje bardzo duża gęstość drzew, zajmuje dużo czasu, aby mapa umieściła wszystkie punkty, a ponieważ pobiera ją w promieniu, ładuje punkty nawet poza rzutnia.
Potrzebuję kwerendy, aby załadować dane tylko we współrzędnych wewnątrz rzutni, przy użyciu współrzędnych północno-wschodniej i południowo-zachodniej jako granice. Szukałem tu dość długo, ale nie mogłem znaleźć niczego, co odpowiadałoby moim wymaganiom. Proszę pomóż mi. Z góry dziękuję..!!
Dodać klauzulę WHERE, która wyklucza wpisy o wartościach lat/long niższych/wyższych niż wartości docelowe ...? – CBroe