Możesz zezwolić użytkownikom na określenie ścieżki w dokumencie JSON, a następnie sparametryzować tę ścieżkę w wywołaniu funkcji, takiej jak json_extract_path_text
. Oznacza to, że klauzula WHERE wyglądałaby tak:
WHERE json_extract_path_text(data, $1) = $2
Argument ścieżki to po prostu łatwo sparametryzowany ciąg, który opisuje klucze do przejścia do podanej wartości, np. 'foo.bars[0].name'
. Prawa strona klauzuli byłaby sparametryzowana według tych samych reguł, których używasz do filtrowania kolumn stałych.