NetPeak Biz Tech    


Как обpaбатывать данные из множества таблиц в Google BigQuery

Как обpaбатывать данные из множества таблиц в Google BigQuery

< >

В прошлой статье я рассказывал об оконных функциях в Google BigQuery. Сегодня рассмотрим функции подстановки таблиц. Здесь всё проще.;

Обычно в SQL для объединения данных из нескольких таблиц в одном запросе используют функцию UNION, но в справочнике доступных функций Google BigQuery вы ее не найдете. Чтобы обратиться в одном запросе одновременно к нескольким таблицам, достаточно перечислить их названия через запятую в пункте FROM. Например, у нас в базе есть 5 таблиц:

  • Sales_june_2015;
  • Sales_july_2015;
  • Sales_august_2015;
  • Sales_september_2015;
  • Sales_october_2015.

Нам необходимо посчитать сумму продаж за третий квартал 2015 года. Информация о продажах в третьем квартале находится в таблицах Sales_july_2015, Sales_august_2015 и Sales_september_2015. Соответственно, нам надо перечислить названия этих таблиц в пункте FROM.

SELECT SUM(Sales) as salesFROM Sales_july_2015, Sales_august_2015, Sales_september_2015

; Таким образом, для BigQuery три таблицы при выполнении запроса будут равносильны одной целой таблице о продажах за третий квартал. Важно, чтобы таблицы, которые вы перечисляете через запятую, имели одинаковую структуру данных. Когда в вашем наборе данных всего пять таблиц, вполне можно обойтись описанным выше функционалом. Если же ваши таблицы разделены, например, по дням, то таких таблиц у вас со временем будет сотни, а через пару лет — тысячи. И каждый раз перечислять их через запятую вручную будет уже не так просто. Функции подстановки таблиц (Table wildcard functions) работают по такому же принципу. Используя их, достаточно обозначить диапазон таблиц вместо перечисления всех таблиц через запятую. Рассмотрим три доступные в Google BigQuery функции подстановки таблиц с примерами их использования.

1. Функция TABLE_DATE_RANGE (префикс, начальная дата, конечная дата)

Функция дает возможность обратиться к ряду таблиц, разделенных по дням, задав диапазон дат. Для названия таблицы, в которой описывается, как использовать данную функцию, нужно использовать формат префикс/дата, при этом дата должна быть записана в формате ГГГГММДД. При определении начальной и конечной даты вы можете использовать функции даты и времени, например:

TIMESTAMP(\\\'2012-10-01 02:03:04\\\')DATE_ADD(CURRENT_TIMESTAMP(), -7, \\\'DAY\\\')

;Предположим, что в нашем наборе данных есть три таблицы:

  • mydata.people20140325;
  • mydata.people20140326;
  • mydata.people20140327.

Для того, чтобы запрос обратился ко всем трем таблицам, необходимо в качестве начальной даты указать TIMESTAMP(\\\'2014-03-25\\\'), а в качестве финальной — TIMESTAMP(\\\'2014-03-27\\\'). Запрос:

SELECTnameFROMTABLE_DATE_RANGE(mydata.people,TIMESTAMP(\\\'2014-03-25\\\'),TIMESTAMP(\\\'2014-03-27\\\'))WHEREage >= 35

;Таким образом, в качестве префикса мы указали mydata.people, в качестве начальной даты 2014-03-25, а в качестве конечной — 2014-03-27. Пример обращения к таблицам за 2 предыдущих дня. Предположим, что в проекте myproject-1234 есть следующие таблицы:

  • mydata.people20140323;
  • mydata.people20140324;
  • mydata.people20140325.

Предположим, что сегодня 25 марта 2014 года. Запрос:

SELECTnameFROM(TABLE_DATE_RANGE([myproject-1234:mydata.people], DATE_ADD(CURRENT_TIMESTAMP(), -2, \\\'DAY\\\'), CURRENT_TIMESTAMP()))WHEREage >= 35

;В данном примере в качестве начальной даты мы использовали функцию DATE_ADD и указали в качестве точки отсчета текущее время, а также задали параметр отставания в 2 дня. В качестве финальной даты мы указали функцию CURRENT_TIMESTAMP, которая возвращает текущую дату и время. Соответственно, финальной датой будет текущий день.

2. Функция TABLE_DATE_RANGE_STRICT (префикс, начальная дата, конечная дата)

Данная функция — эквивалент TABLE_DATE_RANGE, разница между ними в том, что если в списке таблиц, разбитых по дням, будет отсутствовать таблица хотя бы за одну дату из указанного диапазона, функция TABLE_DATE_RANGE_STRIC вернет ошибку, и сообщение «Таблица (имя таблицы) ошибка». Пример ситуации, в которой функция TABLE_DATE_RANGE_STRICT вернет ошибку (подразумевает наличие в вашем наборе данных следующих таблиц):

  • people20140325;
  • people20140327.

Запрос:

SELECTnameFROM(TABLE_DATE_RANGE_STRICT(people,TIMESTAMP(\\\'2014-03-25\\\'),TIMESTAMP(\\\'2014-03-27\\\')))WHERE age >= 35

;В качестве начальной даты мы задали 2014-03-25, в качестве финальной — 2014-03-25. Запрос в данном случае вернет ошибку «Не найдена таблица people20140326», поскольку ее нет в нашем наборе данных.

3. Функция TABLE_QUERY (набор данных, выражение)

С помощью данной функции вы можете обратиться к таблицам, названия которых соответствуют заданному выражению. Параметр «Выражение» обязательно должен быть в строчном виде. В качестве выражения можно использовать строчные функции, такие как CONTAINS или REGEXP_MATCH. Пример запроса, обращающегося к таблицам с названиями, содержащими «oo» и четыре и более символов (подразумевает присутствие в наборе таблиц со следующими названиями):

  • mydata.boo;
  • mydata.fork;
  • mydata.ooze;
  • mydata.spoon.

Запрос:

SELECTspeedFROM (TABLE_QUERY(mydata,\\\'table_id CONTAINS \"oo\" AND length(table_id) >= 4\\\'))

;Запрос обработает данные из таблиц mydata.ooze и mydata.spoon, так как именно эти две таблицы соответствуют заданному в функции TABLE_QUERY выражению. Пример обращения к таблицам с названиями, соответствующими определенному регулярному выражению. В данном случае название таблицы должно начинаться на «boo» и содержать 3-5 цифр:

  • mydata.book4;
  • mydata.book418;
  • mydata.boom12345;
  • mydata.boom123456789;
  • mydata.taboo999.

Запрос:

SELECTspeedFROMTABLE_QUERY([myproject-1234:mydata],\\\'REGEXP_MATCH(table_id, r\"^boo[d]{3,5}\")\\\')

;Поскольку названия этих таблиц соответствуют регулярному выражению, которое мы использовали в запросе «^boo[\d]{3,5}», будут обpaбатываться данные из таблиц:

  • mydata.book418;
  • mydata.boom12345.

Как видите, обpaбатывать данные с помощью функций подстановки таблиц в Google BigQuery значительно более удобно, чем в классическом SQL. Пользуйтесь с удовольствием.



Комментарии:

Где искать контент для сайта

Где искать контент для сайта Создаем список тем, которые заинтересуют пользователя — для этого используем простые сервисы по типу Вордстат. Также изучаем деятельность конкурентов. Узнать больше!...

02 11 2026 7:46:16

Как прогнозировать цены с помощью машинного обучения

Как прогнозировать цены с помощью машинного обучения Прайс-менеджерам: покупаем и моделируем недостающие данные с помощью алгоритмов машинного обучения...

01 11 2026 17:44:41

Про social insight, как один из базовых пунктов брифа

Про social insight, как один из базовых пунктов брифа Важный вопрос, если вы рассчитываете на вирусный эффект своих рекламных идей....

31 10 2026 14:26:28

Безопасность PBN — как защитить сайты и серверы от взлома

Безопасность PBN — как защитить сайты и серверы от взлома В помощь вебмастерам, которые поддерживают работу PBN....

30 10 2026 4:18:31

Репутация в сети. Зачем она нужна молодой компании, и Как ее построить

Репутация в сети. Зачем она нужна молодой компании, и Как ее построить Узнать, как управлять репутацией в сети для молодой компании, можно в статье Netpeak Journal: что такое репутация, как формируется образ бренда и что нужно делать для получения положительных отзывов....

29 10 2026 5:10:53

Как заявить права на сайт в Google Merchant Center

Как заявить права на сайт в Google Merchant Center Здесь не нужно часами собирать семантику, прописывать уйму расширений и создавать максимально релевантные объявления под каждый товар, а потому вам нужен этот понятный и короткий мануал! Читайте дальше!...

28 10 2026 22:22:17

Что такое релевантные страницы?

Что такое релевантные страницы? И как проверить релевантность на своем сайте. Если речь идет о страницах (сайтах), подразумевается соответствие контента запросу. Чем точнее страница отвечает на запрос, решает задачу пользователя, тем (при прочих равных) выше ее позиция в поисковой выдаче....

27 10 2026 22:43:17

Сленг в Telegram — каналы-оборотни, приходы и закрепы

Сленг в Telegram — каналы-оборотни, приходы и закрепы Вам точно нужен ВП? Тогда утвердите сабж, чтобы умещался в три слова, скиньте линк и дескрипшн и распознайте канал-оборотень. Полная подборка сленговых слов, значение которых не всегда найдете в Google...

26 10 2026 1:21:52

Рекламный кабинет в Facebook — пять фишек для упрощения работы

Рекламный кабинет в Facebook — пять фишек для упрощения работы Возможности для специалистов по рекламе в Facebook, о которых знают далеко не все. Подробности — тут....

25 10 2026 9:45:40

Нестандартные форматы баннеров в Google Marketing Platform

Нестандартные форматы баннеров в Google Marketing Platform Краткий обзор динамических мультимедийных объявлений...

24 10 2026 18:22:47

Как использовать видео для увеличения онлайн-продаж

Как использовать видео для увеличения онлайн-продаж 12 идей для видеоконтента и расскажем, где их лучше размещать, чтобы зрители стали клиентами. Как использовать видео для повышения продаж? Длинный, но все равно неполный список форматов. Читайте дальше и предлагайте свои варианты!...

23 10 2026 17:34:14

Как перейти на HTTPS за 12 часов и сохранить трафик

Как перейти на HTTPS за 12 часов и сохранить трафик Как перенести сайт с http на https и сохранить трафик, потратив минимум времени....

22 10 2026 16:13:59

Сколько стоил клик в Яндекс.Директ в Казахстане в первом квартале 2020 года

Сколько стоил клик в Яндекс.Директ в Казахстане в первом квартале 2020 года Чем вам может пригодиться это исследование? Понимания стоимость конверсии и необходимое количество конверсий, вы можете прогнозировать, сколько денег на рекламу нужно выделить. Читать!...

21 10 2026 18:32:25

Собеседование в рекламное агентство Ogilvy

Собеседование в рекламное агентство Ogilvy Тест, который проходят все соискатели. Никому не показывайте!...

20 10 2026 4:23:41

Как нанять маркетолога и не уволить через месяц

Как нанять маркетолога и не уволить через месяц Краткая инструкция по поиску идеального кандидата, потому что (как видим) многим на рынке все еще сложно найти хорошего маркетолога. Да и понять, стоит ли вкладывать в сотрудника силы, время, средства с первой встречи достаточно сложно....

19 10 2026 15:52:56

Покажи свою работу: рассказ SMM-специалиста

Покажи свою работу: рассказ SMM-специалиста Кто ведет соцсети Netpeak и заказывает мерч для всего агентства...

18 10 2026 2:28:10

Семь улучшений Netpeak: SEO, PPC и английская версия блога. Выпуск первый

Семь улучшений Netpeak: SEO, PPC и английская версия блога. Выпуск первый Сегодня мы открываем новую регулярную серию постов, в которых будем стараться раз в квартал рассказывать про семь важных улучшений Netpeak в работе с клиентами. Сейчас мы максимально сфокусированы на SEO и PPC....

17 10 2026 6:13:27

Сколько стоил клик в Google Ads во втором квартале 2016 — исследование Netpeak

Сколько стоил клик в Google Ads во втором квартале 2016 — исследование Netpeak Алексей Селезнев проанализировал более 7 миллионов кликов и посчитал, во сколько обходятся рекламодателям клики по объявлениям в разных странах и тематиках....

16 10 2026 4:54:57

17 тезисов о том, как инвестировать в интернет-маркетинг

17 тезисов о том, как инвестировать в интернет-маркетинг Артем Шевченко (Epicentr), Михаил Рогальский (Monobank), Максим Дмитров (BSH Hausgeräte), Андрей Чумаченко (Netpeak) и другие участники конференции 8Р о том, как они рассчитывают инвестиции в интернет-маркетинг....

15 10 2026 5:55:50

10 трендов email-маркетинга в 2022 году

10 трендов email-маркетинга в 2022 году All about internet mail. Примеры того, что стоит внедрить в рассылках почты онлайн....

14 10 2026 7:39:35

Как украинские компании креативят к Черной пятнице. Примеры

Как украинские компании креативят к Черной пятнице. Примеры Как украинский бизнес использует Черную пятницу, чтобы увеличить продажи и привлечь клиентов. Одежда, детские товары, курсы английского языка, экзотические фрукты, постельное белье, посуда, бытовая техника, SMM-агентство и многое другое...

13 10 2026 23:33:34

Cколько стоил клик в Google Ads и Яндекс.Директ в Казахстане в третьем квартале 2017

Cколько стоил клик в Google Ads и Яндекс.Директ в Казахстане в третьем квартале 2017 Казахстанские реалии: данные по более 1 млн кликов в 23 тематиках и 15 городах....

12 10 2026 20:45:41

Контекстная реклама для SaaS-продукта: как легко измерять в бизнес-показателях эффективность контекстной рекламы

Как правильно рассчитать окупаемость рекламных кампаний SaaS-продуктов, получить по ним четкую аналитику, и что делать дальше....

11 10 2026 21:56:14

SEO-продвижение для пиццерии — ROMI 606% за 3 месяца

SEO-продвижение для пиццерии — ROMI 606% за 3 месяца Как грамотно раскрутить пиццерию. Сняли фильтр и достигли хороших результатов....

10 10 2026 14:27:58

Время, в которое мы живём — лучшее в истории. Давайте это замечать!

Время, в которое мы живём — лучшее в истории. Давайте это замечать! О ловушке медиа, Стивене Пинкере и почему в любой ситуации важно оставаться оптимистом....

09 10 2026 2:31:47

Внутренние факторы ранжирования — как сделать сайт понятным для поисковых систем

Внутренние факторы ранжирования — как сделать сайт понятным для поисковых систем Краткая инструкция для новичков. Структура сайта, внутренняя перелинковка, юзабилити, контент, оптимизация тегов и заголовков, HTTPS, скорость загрузки сайта, mobile friendly и другие. Узнать больше!...

08 10 2026 17:25:14

Как продать кровати в Facebook — кейс магазина мебели matrason.ua

Результаты кампании динамического ремаркетинга для соцсетей...

07 10 2026 9:37:49

Как быстро почистить трэш-площадки в контекстно-медийной сети Google

Как быстро почистить трэш-площадки в контекстно-медийной сети Google Если хотите, чтобы кампании в контекстно-медийной сети работали эффективно, следует очистить площадки и ввести это в привычку...

06 10 2026 5:32:45

Теги alternate, hreflang, media, type — зачем и как их использовать

Теги alternate, hreflang, media, type — зачем и как их использовать О важных для разметки сайта тегах — alternate, hreflang, media, — и как их грамотно использовать при продвижении....

05 10 2026 11:34:17

Создаем рейтинг CPA-сетей в Украине

Создаем рейтинг CPA-сетей в Украине Опыт коллег и их рекомендации — самая ценная валюта в арбитраже. Давайте объединим усилия и составим актуальный рейтинг СРА-сетей Украины....

04 10 2026 2:16:27

Что такое вес страниц и на что он влияет

Что такое вес страниц и на что он влияет Вес страниц — один из факторов ранжирования в поисковых системах Google и Яндекс....

03 10 2026 10:13:31

Шесть принципов виральности, или Как работает вирусный маркетинг

Шесть принципов виральности, или Как работает вирусный маркетинг Автор книги о вирусном маркетинге «Заразительный. Психология сарафанного радио» Йона Бергер пришел к выводу, что у виральности всего шесть принципов....

02 10 2026 23:26:10

Как составить техзадание и донести суть исполнителю

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

01 10 2026 10:35:59

Как проверить сайт на бан в поисковых системах

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

30 09 2026 2:43:59

Рэнд Фишкин: о трендах SEO и работе волшебника страны Moz

Рэнд Фишкин: о трендах SEO и работе волшебника страны Moz Экс-CEO, а теперь просто сотрудник и «волшебник страны Moz» Рэнд Фишкин поделился с читателями блога рассказом о своем видении будущего SEO, перспективах анонимизации сети и причудах американских клиентов....

29 09 2026 22:18:56

SEO для ювелирного магазина — как на 100% увеличить трафик из поисковых систем после переезда сайта

SEO для ювелирного магазина — как на 100% увеличить трафик из поисковых систем после переезда сайта Рост количества транзакций на 417%, дохода на 560%, среднего чека на 28%....

28 09 2026 11:48:41

15 стереотипов о контекстной рекламе, от которых бизнесу нужно отказаться

Попасть в топ 3 — ваш предел мечтаний? Почему и когда это не принесет ожидаемых результатов, плюс другие не актуальные убеждения о PPC. Узнать больше!...

27 09 2026 17:51:45

Закон о языках и ваш сайт: как создать украинскую версию и где искать удачные кейсы

Закон о языках и ваш сайт: как создать украинскую версию и где искать удачные кейсы Рекомендации и мнения экспертов по одной из самых противоречивых тем украинского интернет-прострaнcтва....

26 09 2026 10:25:48

Как рекламировать товары для HoReCa и выйти на окупаемость в первый месяц работ — кейс econom-service

Как рекламировать товары для HoReCa и выйти на окупаемость в первый месяц работ — кейс econom-service Ещё один проект, который продвигался во время карантина....

25 09 2026 17:45:21

Мобильное приложение для ecommerce — как правильно рассчитать ресурсы при разработке, чтобы повысить продажи

Несколько полезных советов перед запуском. Tрaнcпорт и путешествия, ритейл, медиа и развлечения — тематики, в которых чаще используют мобильные приложения. Есть и другие факторы популярности приложений. Узнать!...

24 09 2026 19:57:29

Как собрать данные из Google Search Console и построить отчетность с помощью Python и Google BigQuery

Как сохранить статистику переходов из органики Google, а также автоматизировать отчетность: подробное руководство для технического специалиста....

23 09 2026 20:33:12

Как сформировать комaнду департамента маркетинга для международной компании

Как сформировать комaнду департамента маркетинга для международной компании Поговорим о soft skills, потому что именно они, исходя из моего опыта, помогают строить поистине сильные комaнды....

22 09 2026 23:56:14

Исследования рынка — новая услуга Netpeak

Исследования рынка — новая услуга Netpeak Предложение для крупных и средних бизнес-проектов по эффективному использованию больших бюджетов при запуске на новых рынках...

21 09 2026 4:32:26

Как построить сводные таблицы в Excel, LibreOffice, OpenOffice и таблицах Google

Как построить сводные таблицы в Excel, LibreOffice, OpenOffice и таблицах Google Аналитик Netpeak Алексей Селезнев рассказал, как составить и пользоваться сводными таблицами онлайн в excel и за считанные секунды выделить нужные для анализа данные из десятков тысяч строк в отчетах Google ***ytics...

20 09 2026 10:10:33

Как увеличить продажи из РСЯ — рост транзакций на 427% за месяц

Как увеличить продажи из РСЯ — рост транзакций на 427% за месяц Как увеличить количество транзакциий, сохранив прибыльность кампании в РСЯ?...

19 09 2026 0:37:45

Культурный шок, Горько 3, или Зимний корпоратив Netpeak Group

Культурный шок, Горько 3, или Зимний корпоратив Netpeak Group Больше пятисот человек из Украины, России, Болгарии и Казахстана. Я зашел в зал и увидел толпу каких-то гопарей и воровайок родом из 90-х, а само помещение было оформлено под свадьбу. Выпьем за молодых!...

18 09 2026 4:26:39

Новая функция Google Рекламы — общий бюджет

Новая функция Google Рекламы — общий бюджет Распределение бюджета на кампании в Google Рекламе. Обозревает Григорий Крутий....

17 09 2026 7:21:11

TikTok, Banda, Rocket, I am IDEA и McCann Kyiv — идеи для видеоконтента

TikTok, Banda, Rocket, I am IDEA и McCann Kyiv — идеи для видеоконтента Инсайты Диви Конф 2021, онлайн-конференции о видеомаркетинге....

16 09 2026 18:18:58

Правила работы с отзывами клиентов — памятка для брендов

Правила работы с отзывами клиентов — памятка для брендов От наличия отзывов зависит решение клиента купить товар или заказать услугу. Как правильно работать с репутацией? Разбираемся...

15 09 2026 22:34:22

Как построить диаграмму и не облажаться

Как построить диаграмму и не облажаться Как нарисовать круговую или столбчатую диаграмму. Избавляемся от популярных ошибок при оформлении...

14 09 2026 20:33:40

Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::