Интересно, может ли кто-нибудь помочь мне, пожалуйста?
Я пытаюсь собрать запрос REGEXP_REPLACE, который заменяет данные, но только если строка соответствует определенному условию.
Этозапрос, который я придумал:
SELECT
#select all fields excluding those under the hits record
* EXCEPT (hits),
#start array - this rebuilds the hit record
ARRAY(
SELECT
#unnest the hit field, select each field excluding those under the page record
AS STRUCT * EXCEPT (page),
(
SELECT
#select all page fields excluding pageTitle
AS STRUCT page.* EXCEPT (pagePath),
#remove the query parameter from the pagePath fields
REGEXP_REPLACE(page.pagePath, r'\/invitations\/([a-zA-Z0-9]{8})\/', '/invitations/([a-zA-Z0-9]{8})/redacted') AS pagePath) AS page
WHERE
AND NOT page.pagePath= (r'\/invitations\/[a-zA-Z0-9]{8}\/(ltd|limited|co|business')
FROM
UNNEST(hits) ) AS hits
FROM
`Test.Test.ga_sessions_20190401`
Запрос не работает, и часть, с которой я борюсь, - это ГДЕ НЕТ.Я пытался использовать AND NOT REGEXP_MATCH в дополнение к вышеперечисленному, но я не могу заставить это работать.
Мне просто интересно, может ли кто-нибудь взглянуть на это, пожалуйста, и дать несколько советов, как решить эту проблему?
Большое спасибо и всего наилучшего
Крис