У меня есть столбец JSON (B) в моей базе данных postgres. Я выбрал в этом столбце все данные, которые я получаю от API. Теперь мне нужно извлечь некоторые пары ключ/значение из этого массива. Например. для массива JSON как:Извлечение пары ключ/значение из массива JSON
[{"myKey1": "school type", "myKey2": "primary"}, {"myKey1": "study coverage", "myKey2": "secondary"}]
мне нужно извлечь:
myKey1: school type myKey2: primary
myKey1: study coverage myKey22: secondary
Поскольку я новичок в JSON, мне кажется, что я в первую очередь необходимо разбить массив в объекты (окруженный фигурными скобки), а также некоторые функции postgres для объектов (заданные в следующей ссылке https://www.postgresql.org/docs/9.4/static/functions-json.html), которые я могу использовать для извлечения необходимых пар ключ/значение.
Моя таблица базы данных:
CREATE TABLE "Education" (
"id" SERIAL NOT NULL,
"json_text" JSONB NOT NULL,
);
Я использую следующий запрос для достижения этой цели:
SELECT tmp_col->>'myKey1'
FROM (
SELECT json_text->> 0 AS temp_col
FROM education
) AS temp_table
Я получаю следующее сообщение об ошибке, когда я запускаю этот запрос.
Есть ключи к тому, что не хватает?
Также есть ли какие-либо более эффективные способы получения необходимой информации. Я работаю на языке Java для отображения информации.
Спасибо.