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. Пользуйтесь с удовольствием.



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

Кейс по SERM для DOM.RIA. Как работать с репутацией и за четыре месяца убрать негатив в топ-10.

Кейс по SERM для DOM.RIA. Как работать с репутацией и за четыре месяца убрать негатив в топ-10. Крупным брендам не избежать негатива в сети. Но с ним можно и нужно работать. Читайте успешный кейс для DOM.RIA....

16 07 2026 22:23:37

Дополнительные ценности Netpeak — что вы получаете при заказе [SEO 2.0] вместе с поисковым продвижением

Дополнительные ценности Netpeak — что вы получаете при заказе [SEO 2.0] вместе с поисковым продвижением В коробку [SEO 2.0] вместе с самим поисковым продвижением входят дополнительные ценности Netpeak: унифицированные действия по увеличению продаж, улучшения удобства работы и преимущества бренда Netpeak...

15 07 2026 20:30:14

Как «ломают» воронку продаж при построении отчётности

Как «ломают» воронку продаж при построении отчётности Без понимания того, какие данные заложены в основу воронки продаж получается... — читайте в статье...

14 07 2026 15:35:14

Как получить больше от рекламы в Facebook — семь новых фишек

Как получить больше от рекламы в Facebook — семь новых фишек Баннерная реклама в фейсбуке. Обзор семи новых рекламных инструментов...

13 07 2026 18:52:41

Search Console Insights — как проанализировать контент на сайте

Search Console Insights — как проанализировать контент на сайте Каковы интересы вашей аудитории, как люди находят ваш контент. Рассказываем обо всех возможностях от Search Console Insights....

12 07 2026 8:15:12

Как запустить онлайн марафон? Бесплатные и платные методы

Как собрать свой онлайн марафон на 500 или 1000 человек? Сколько это стоит и какие сервисы использовать. Давайте разбираться....

11 07 2026 14:15:57

Cемь улучшений Netpeak: бизнес-кластер, производство баннеров и более 20 разовых услуг

Cемь улучшений Netpeak: бизнес-кластер, производство баннеров и более 20 разовых услуг Решили составить список из семи улучшений. Что нового, Netpeak?...

10 07 2026 8:50:20

Девять неочевидных и пpaктически применимых SEO-фишек — круглый стол 8P 2018

Девять неочевидных и пpaктически применимых SEO-фишек — круглый стол 8P 2018 Нет новых идей для развития рекламной компании? Одобренные рекомендации по поисковому продвижению от экспертов: спикеров и участников 8P 2018...

09 07 2026 17:32:11

Chrome Dev Tools: 7 фишек для SEO анализа в инструментах разработчика Chrome

Chrome Dev Tools: 7 фишек для SEO анализа в инструментах разработчика Chrome Какие возможности дает Chrome DevTools для SEO-оптимизации...

08 07 2026 17:18:21

Уроки Google ***ytics — как добавить новый сайт в Google ***ytics

Уроки Google ***ytics — как добавить новый сайт в Google ***ytics Как настроить Google ***ytics и как открыть вход другому пользователю: подробный урок....

07 07 2026 17:24:57

Кейс по выводу из фильтра Google Panda интернет-магазина отопительной и водоснабжающей техники: ROMI 338%

Кейс по выводу из фильтра Google Panda интернет-магазина отопительной и водоснабжающей техники: ROMI 338% Признаки того, что магазин находится под фильтром и шаги по выводу из него...

06 07 2026 23:28:53

Как арбитражник использует редирект в контекстной рекламе

Как арбитражник использует редирект в контекстной рекламе Чтобы перенаправить рекламу не на свой домен, арбитражники используют редирект в Яндексе при работе с партнерскими ссылками...

05 07 2026 1:35:10

Сколько стоил клик в Google Ads и Яндекс.Директ в Казахстане в четвертом квартале 2020 года — исследование Netpeak

Сколько стоил клик в Google Ads и Яндекс.Директ в Казахстане в четвертом квартале 2020 года — исследование Netpeak Данные Google по 6 миллионам кликов 16 городах страны и данные Яндекс по 520 346 кликам, в 54 городах страны в 22 тематиках в обоих рекламных системах. Узнать больше!...

04 07 2026 11:18:11

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

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

03 07 2026 13:41:22

Деcять неочевидных и пpaктически применимых PPC-фишек — круглый стол 8P 2018

Деcять неочевидных и пpaктически применимых PPC-фишек — круглый стол 8P 2018 Проверенные лайфхаки по платному трафику от спикеров и участников конференции 8P 2018...

02 07 2026 12:52:40

Социальный арбуз или самые популярные тематики в Facebook в Украине

Охват и средняя цена за клик в самых популярных тематиках....

01 07 2026 10:53:45

Запросы not provided — как получить больше информации

Запросы not provided — как получить больше информации Отслеживаем в статистике Google ***ytics посетителей пришедших через защищенное соединение в поиске Google....

30 06 2026 3:23:56

Как создать рекламную видеозаставку с помощью Bumper Machine

Как создать рекламную видеозаставку с помощью Bumper Machine Создание даже короткого ролика может стоить дорого. Поэтому можно использовать бесплатный инструмент Bumper Machine от Google....

29 06 2026 18:12:52

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

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

28 06 2026 21:11:36

Кейс Yves Rocher: как сформировать спрос на новую косметику с помощью видеорекламы

Кейс Yves Rocher: как сформировать спрос на новую косметику с помощью видеорекламы Какие форматы видеорекламы логичнее купить для создания спроса на новую продукцию? Выясняем на примере кейса бренда Yves Rocher...

27 06 2026 22:54:19

Плотность ключевых слов — как определить релевантность документа ключевому запросу

SEOmoz создал систему, которая определяет релевантность страницы поисковому запросу....

26 06 2026 14:41:48

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

Рекламные кампании для масштабирования бизнеса в интернете Главные вопросы при запуске и настройке любых кампаний: «чего я хочу достичь?», «помогает ли текущая кампания достичь желаемых результатов?», «влияет ли кампания на эффективность других кампаний и источников?». Узнать больше....

25 06 2026 3:49:26

Как стать специалистом по контекстной рекламе

Как стать специалистом по контекстной рекламе Менеджер, маркетолог, дизайнер программист? Делимся секретами нетпик, каким должен быть специалист по рекламе...

24 06 2026 9:52:37

Кейс по продвижению интернет-магазина цветов: ROMI 187%

Кейс по продвижению интернет-магазина цветов: ROMI 187% SEO для цветочных магазинов с оплатой за трафик и полученные результаты...

23 06 2026 17:23:30

Какие виды гeймификации можно использовать в рассылках

Какие виды гeймификации можно использовать в рассылках Игровой формат отлично работает в email-рассылке. Но какой вид гeймификации интересен любой целевой аудитории? Давайте рассмотрим примеры....

22 06 2026 18:17:56

Поведенческая экономика и три принципа мотивации человека

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

21 06 2026 14:11:51

Отделяем мух от котлет в контент-маркетинге

Отделяем мух от котлет в контент-маркетинге Пpaктическая информация о том, что и куда нужно постить....

20 06 2026 9:55:52

Как найти упущенную семантику: кейс сервиса Serpstat (ex. Prodvigator)

Как найти упущенную семантику: кейс сервиса Serpstat (ex. Prodvigator) Упущенная семантика — это ключевые фразы, которые успешно используют в SEO и PPC ваши основные конкуренты, но не используете вы. Как найти упущенную семантику? Читайте кейс сервиса Prodvigator....

19 06 2026 15:38:44

Кейс «Мой Город»: как мы за месяц подняли трафик из Facebook на 86%

Цель — трафик facebook. Делимся кейсом проекта «Мой город»....

18 06 2026 16:19:31

Импорт офлайн-конверсий Google Рекламы. Подробный инструктаж

Импорт офлайн-конверсий Google Рекламы. Подробный инструктаж Крутые площадки для нового инструмента: контекстщикам на заметку!...

17 06 2026 22:43:36

Кредит на рекламу для бизнеса, спецпроекты, песочница контента и две новые конференции

Кредит на рекламу для бизнеса, спецпроекты, песочница контента и две новые конференции А ещё у нас появилась новая стратегия SEO-продвижения для ниши доставки еды и продуктов....

16 06 2026 10:14:43

Кейс — как увеличить трафик блога юридического сайта на 50 000% с помощью SEO

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

15 06 2026 11:47:13

Контекстная реклама интернет-магазина автотоваров — как снизить траты и увеличить ROMI на 772%

Контекстная реклама интернет-магазина автотоваров — как снизить траты и увеличить ROMI на 772% Изучаем на примере тестирования товарных кампаний в момент смены логотипа и ренейминга...

14 06 2026 6:48:23

Стили управления по Ицхаку Адизесу

Стили управления по Ицхаку Адизесу Менеджмент и лидерство: 4 разных типа руководства организацией и нескучные иллюстрации в стиле South park....

13 06 2026 21:24:16

Как добавить подписчиков в Facebook, Twitter и LinkedIn из базы рассылки

Как добавить подписчиков в Facebook, Twitter и LinkedIn из базы рассылки Как быстро увеличить количество заинтересованных подписчиков в facebook, twitter, google+ и linkedIn с помощью контактов из рассылки и аккаунтов Facebook....

12 06 2026 10:51:43

Кейс avtokrisla.com: триггерное письмо «Заказ оформлен» как дополнительный источник прибыли

Кейс avtokrisla.com: триггерное письмо «Заказ оформлен» как дополнительный источник прибыли Многие недооценивают триггерное письмо после оформления покупки, а зря. И вот почему....

11 06 2026 18:51:35

Язык R в веб-аналитике и интернет-маркетинге — интервью с Алексеем Селезневым

Зачем маркетологи и аналитики обращаются к языку программирования R в повседневной работе нужно и какая польза от программирования на R в интернет-маркетинге в интервью Алексея Селезнева...

10 06 2026 17:26:19

Как модель маркетплейса увеличивает SEO-трафик?

Как модель маркетплейса увеличивает SEO-трафик? Каким образом бизнес-модель маркетплейса может помочь увеличить трафик интернет-магазина в целом....

09 06 2026 15:55:53

Как привлечь на 174% больше звонков с помощью видеорекламы — кейс клиники лазерной косметологии Goldlaser.com.ua

Как привлечь на 174% больше звонков с помощью видеорекламы — кейс клиники лазерной косметологии Goldlaser.com.ua Клиникка использует лазеры и нуждается в продвижении. В специфических сферах привлечь потребителя впервые бывает сложнее и дороже, чем удержать его. Этот кейс о том, как повысить количество обращений новых клиентов с помощью видеорекламы...

08 06 2026 9:36:38

5 примеров автосообщений для сайта

5 примеров автосообщений для сайта Как улучшить конверсию сайта: идеи для маркетологов...

07 06 2026 10:39:29

Как сделать платежи в соцсетях удобными для клиента и продавца

Как сделать платежи в соцсетях удобными для клиента и продавца Оплата покупок в Facebook и Instagram через платежные ссылки...

06 06 2026 12:51:35

Как арбитражнику получить правильную статистику конверсий из контекстной рекламы

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

05 06 2026 11:29:44

11 вопросов перед заказом коллтрекинга

11 вопросов перед заказом коллтрекинга Какие типы звонков отслеживаются? Есть ли интеграция с Google ***ytics? Существуют ли в выбранном сервисе или на платформе инструменты интеграции с другими системами? Больше вопросов и ответов на них — в статье....

04 06 2026 12:39:13

Как выбрать сервис email-рассылок за 15 дней — кейс агентства Netpeak

Как выбрать сервис email-рассылок за 15 дней — кейс агентства Netpeak У нас на руках оказались все карты для создания собственного мини-рейтинга популярных сервисов email-рассылок....

03 06 2026 3:13:36

15 статей о контент-маркетинге — от идеи до размещения

15 статей о контент-маркетинге — от идеи до размещения Где искать информацию, как составить контент-план, писать тексты быстро и легко, а затем продвигать их. Собрали для вас подборку постов о разных этапах работы с контентом....

02 06 2026 17:11:30

Актуальна ли классическая воронка продаж?

Актуальна ли классическая воронка продаж? В продажах лучше визуализировать путь потребителя в виде нейронных сетей....

01 06 2026 12:29:20

Аудит аккаунта Google Рекламы своими силами

Аудит аккаунта Google Рекламы своими силами Одесса. Конференция «Контекстная реклама 2013». Самые полезные настройки рекламной кампании....

31 05 2026 19:46:34

Рамзи Ризк про EyeEm и будущее мобильных приложений

Основатель сервиса мобилографии EyeEm Рамзи Ризк рассказал об особенностях своего сервиса и будущем мобильных приложений....

30 05 2026 22:48:27

Видеореклама в Google Ads: как оставить только релевантные площадки

Видеореклама в Google Ads: как оставить только релевантные площадки Четыре способа исключить нерелевантные места размещения видеорекламы, а также полезные списки минус-слов и детских YouTube-каналов....

29 05 2026 20:39:10

Как без ошибок объединять данные в Google Data Studio

Как без ошибок объединять данные в Google Data Studio Продолжаем разговор о том, почему функция «Совмещение данных» в Google Data Studio может работать не так, как вы ожидаете....

28 05 2026 5:42:27

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