2017-05-06 23 views
7

Mam bardzo szczególny przypadek, w którym użytkownicy mogą przechowywać własny obiekt JSON dla rekordów. Powodem jest to, że każdy użytkownik ma specjalne obiekty i strukturę danych, która jest częścią jego normalnego zapisu.Generowanie warunku JSON_EXTRACT MySQL z parametrem wyszukiwania użytkownika

Chcę umożliwić użytkownikom wyszukiwanie obiektów w bazie danych MySQL DB za pośrednictwem mojego interfejsu API. Używam składni JSON_EXTRACT(json_field, "$ ...") ... lub w skrócie składnię ->.

Użytkownicy powinni mieć możliwość wysyłania zapytań w następujący sposób: get /service/resource?a>3 AND b.c="dog" OR b.d IS NOT NULL gdzie wszystkie parametry (a, b) znajdują się w polu json.

Najpierw pomyślałem o używaniu listy parametrów, ale jak powinienem móc połączyć operatora AND, OR, IS NULL?

Jak zaprojektowałbyś taką funkcję wyszukiwania dla RESTful API?

+0

Czy używasz odwróconych ukośników ('\\')? –

+0

Rick Nie rozumiem co masz na myśli? Czy możesz wyjaśnić swój komentarz nieco bardziej szczegółowo? – user1482309

+0

'get \ service \ resource' –

Odpowiedz

1

Google używa "+" do budowania swoich zapytań. Zapytanie Google "a AND B or NOT c" -> google.com/q=a+AND+b+lub+NOT+c

Spróbuję tego approuch.

+0

'' '' jest używane w adresach URL zamiast spacji. (To nie jest tylko Google.) –