У меня есть столбец, содержащий объект json. Моя цель - получить общее количество массива, даже если я использую лимит.Postgres get json count over
CREATE TABLE json_values (
elems json
);
INSERT INTO json_values VALUES ('{"field1" : [{"val" : 1}, {"val" : 2}, { "val" : 3}] ,"field2" : []}');
SELECT json_array_elements(elems->'field1'), count(*) OVER()
FROM json_values
LIMIT 1
Это показывает первую строку, но мне кажется, что счет более() не принимается во внимание, на самом деле я получаю только 1 вместо 3
Есть еще один способ сделать это?
отличный ответ, но json_array_length действительно доступен на версиях 9.3+ –