Můžete uživatelům umožnit zadat cestu v dokumentu JSON a pak tuto cestu parametrizovat v rámci volání funkce jako json_extract_path_text
. To znamená, že klauzule WHERE by vypadala takto:
WHERE json_extract_path_text(data, $1) = $2
Argument cesty je pouze řetězec, snadno parametrizovatelný, který popisuje klíče pro přechod dolů na danou hodnotu, např. 'foo.bars[0].name'
. Pravá strana klauzule by byla parametrizována podle stejných pravidel, jaká používáte pro filtrování pevných sloupců.