Aktywne Wpisy
Mrbimbek +572
Dwa lata temu pomagałem uchodźcom z Ukrainy którzy z jedną walizką uciekali przed wojną, była w tym rodzina z którą kontakt miałem chwilę dłużej, trzy dziewczyny z matką i dwójka dzieci, pomagałem im szukać pracy, tłumaczyć dokumenty, pomagałem w urzędach. Jedna z dziewczyn dziś się odezwała, wrócili na Ukrainę a kilka dni temu urodziła syna, przez to jak im pomogłem w najcięższym dla nich czasie nazwała syna moim imieniem, taka drobnostka a
CLOUT_MMA +153
Macie w bazie (np. MySQL, Postgres, SQLite) sporą tabelkę zawierającą punkty z przypisanym słowem kluczowym:
CREATE TABLE points ( x INTEGER, y INTEGER, keyword TEXT );
Użytkownik jako zapytanie podaje:
- listę interesujących go regionów (lista dowolnej długości)
- listę słów kluczowych (lista dowolnej długości)
Sposób zdefiniowana regionów jest drugorzędny, można zrobić dowolny z kształtów lub zaproponować jakiś inny:
- prostokąty (x1,y1,x2,y2)
- koła (x,y,promień)
- kwadraty (x,y,bok)
Chcemy przefiltrować tabelkę points, aby znaleźć tylko te, które znajdują się w którymś z regionów i zawierają słowo kluczowe z podanej listy.
Regiony mogą na siebie nachodzić, ale punkt znajdujący się w kilku regionach wolelibyśmy dostać w zbiorze wynikowym tylko raz.
Jak byście to zaimplementowali w wybranym języku programowania ( np. #php #python #java #csharp #rubyonrails #go #rust #perl #nodejs )?
Jak byście to zrobili, żeby użyć prepared statements?
To nie jest praca domowa ani zadanie w pracy jakby co :-) Znam rozwiązanie, ale ciekawi mnie, czy ktoś zaproponuje coś lepszego.
Komentarz usunięty przez autora
Z darmowych to jeszcze w SQLite jest spatialite i wbudowana obsługa GIS w mongodb.
A jak chcesz mieć modele Javowe w kodzie, to jest biblioteka JTS Topology Suite
Pasuje do wszystkiego, co zwraca WKB lub WKT jako dane.
A jeśli musisz to tylko wyświetlić, to całe przetwarzanie robisz bazą, wywalasz jako GeoJSON i bezpośrednio na front.
OK, źle zadałem pytanie i skupiliście się nie na tym, co mnie interesuje.
Zapomnijmy zupełnie o GIS i geometrii - ta część mnie kompletnie nie interesuje.
Chodzi mi o samą technikę konstruowania zapytania ze zmienną liczbą parametrów.
Wymyślę inny przykład i zrobię drugi wpis.
@LolsLols: usuń konto zielonko. Napisałem, że znam rozwiązanie i nie szukam porady.
Piszę artykuł do pewnego magazynu programistycznego i opisuję pewną technikę, którą kiedyś wymyśliłem i wydaje mi się, że nikt nigdy jej nie stosował