Сопоставьте вложенное значение поля JSON в большом запросе GCP

У меня есть вложенная полезная нагрузка JSON, которая содержит несколько пар значений полей, и я хотел бы задать условие для сопоставления и несоответствия некоторых значений.

Например, ниже приведен мой пример полезной нагрузки -

Я хочу сделать что-то вроде того, где я могу инвертировать полезные нагрузки с указанным выше значением статуса, которое равно MatchFailed.

Я пишу такой запрос, но он не возвращает никаких результатов -

 responseContent: ""[{\"provider\":\"test\",\"services\":[\"broadband\"],\"status\":\"MatchFailed\",\"data\":{\"code\":\"1234567\",\"description\":\"notfound\"}}]""
 SELECT
  (REGEXP_EXTRACT(JSON_VALUE(json_payload.proxy_details.responseContent), r'status\\":\\"(.*?)\\')) as status
    FROM
      `prj.global._Default._Default` AS logs
    WHERE
      log_name = "projects/prj/logs/logs"
      AND JSON_VALUE(json_payload.proxy_details.responseContent, '$.status') = "MatchPending"
Виталий
Вопрос задан3 марта 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.