Я пытаюсь разложить данные Google Analytics в Google Big Query. Моя цель — найти показатели производительности страницы для выбранной группы страниц, из которых у меня есть только код, а не весь PagePath.
Для этого я использую функцию CONTAINS_SUBSTR в предложении WHERE.
Когда я запускаю такой код, он работает отлично:
WHERE
_table_suffix BETWEEN "20210501"
AND "20210831"
AND CONTAINS_SUBSTR(hits.page.PagePath, '/62150/')
Однако меня интересует больше страниц, чем просто /62150/ (~30 страниц). Всякий раз, когда я пытаюсь добавить больше страниц в функцию where contains_substring, это не работает. Например.
_table_suffix BETWEEN "20210501"
AND "20210831"
AND CONTAINS_SUBSTR(hits.page.PagePath, IN('/62150/', '/27000/'))
У кого-нибудь есть предложения?
Лучший,
Я также буду использовать REGEXP_CONTAINS вместо CONTAINS_SUBSTR. @Jaytiger, можешь ли ты назвать это реальным ответом?


Рассмотрим это вместо использования CONTAINS_SUBSTR:
SELECT *
FROM `your_sharded_tables_*`
WHERE _TABLE_SUFFIX BETWEEN "20210501" AND "20210831"
AND REGEXP_CONTAINS(hits.page.PagePath, r'/(62150|27000)/')
Как насчет использования
REGEXP_CONTAINS(hits.page.PagePath, r'/(62150|27000)/')вместоCONTAINS_SUBSTR? вы можете добавить больше кодов в регулярное выражение, например(62150|27000|28000|29000)