Как обpaбатывать данные из множества таблиц в Google BigQuery > NetPeak - Независимость и осознанность
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. Пользуйтесь с удовольствием.



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

Что такое фишинговая ссылка и как проверить сайт на её наличие

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

15 03 2025 1:57:25

Загадки для тренировки мозга: заяц с одним ухом, пароход из Гавра и лабиринт с правым поворотом

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

14 03 2025 22:40:10

Стадии формирования комaнд по Брюсу Такмену

Стадии формирования комaнд по Брюсу Такмену Перевод статьи о стадиях формирования комaнд по Брюсу Такмену — полезно знать всем....

12 03 2025 10:32:18

MeDiConf — новая конференция по медицинскому маркетингу от Netpeak и Octopus Events

MeDiConf — новая конференция по медицинскому маркетингу от Netpeak и Octopus Events 29 ноября в Киеве в UNIT.City — конференция по медицинскому маркетингу MeDiConf...

11 03 2025 13:22:53

Кукла с протезом, кальвадос Ремарка и страхование дворца: чем радовала и шокировала реклама соцсетей в январе 2021-го

Кукла с протезом, кальвадос Ремарка и страхование дворца: чем радовала и шокировала реклама соцсетей в январе 2021-го Какая интересная и трэшовая реклама встречалась в соцсетях в январе 2021-го? Давайте смотреть...

10 03 2025 6:37:35

Что делать со старыми статьями в блоге

Что делать со старыми статьями в блоге Что делать контент-маркетологам, когда все тексты в интернете начнут генерировать боты? Спойлер: обновлять старый контент....

09 03 2025 8:27:18

Как быстро найти ошибки SEO-оптимизации с помощью Netpeak Spider

Как быстро найти ошибки SEO-оптимизации с помощью Netpeak Spider Сохраняем время и ресурсы для проверки типичных задач и тратим его на реализацию креативных идей по оптимизации сайта....

08 03 2025 11:54:27

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

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

07 03 2025 1:34:16

Как проводить ежедневные встречи в режиме WFH — чек-лист Netpeak

Дейли — ежедневный комaндный митинг, на котором комaнда синхронизируется по ключевым моментам работы и по текущим задачам. Делимся чек-листом агентства Netpeak по организации дейли на удалёнке....

06 03 2025 13:55:48

Английский язык — два упражнения для пополнения словарного запаса и развития разговорной речи

Английский язык — два упражнения для пополнения словарного запаса и развития разговорной речи Улучшайте свой уровень английского. Упражнения для В1 — Intermediate («Средний+»). Узнать больше!...

05 03 2025 11:27:14

Знакомство с Яндекс.Вебмастер: полезные фишки и советы новичкам

Знакомство с Яндекс.Вебмастер: полезные фишки и советы новичкам Не Google единым. Нужные и важные знания по Яндекс.Вебмастер....

04 03 2025 1:51:43

Что такое трекер мобильного приложения и как его выбрать

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

03 03 2025 13:22:33

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

Сколько стоил клик в Google Ads в Казахстане в третьем квартале 2020 года — исследование Netpeak Данные, приведенные в исследовании, могут помочь в составлении медиапланов по продвижению в интернете....

02 03 2025 10:40:34

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

Сколько стоил клик в Google Ads в Казахстане во втором квартале 2020 года — исследование Netpeak Зная стоимость клика в вашей тематике или регионе, коэффициент конверсии на сайте, вы можете оценить объем необходимых в рекламу инвестиций и прогнозировать стоимость конверсии. Узнать больше!...

01 03 2025 9:10:30

Особенности продвижения сайтов в Японии

Особенности продвижения сайтов в Японии SEO-специалист Netpeak Виктория Игнатьева опубликовала небольшой обзор особенностей рынка SEO Японии, подготовленный на основе собранных в сети материалов, а также личных знаний и наблюдений...

28 02 2025 23:53:10

Как показать пользователю статистику Google ***ytics, не открывая доступ? Мануал

Как показать пользователю статистику Google ***ytics, не открывая доступ? Мануал Вам тоже нужно предоставлять отчеты о работе рекламной кампании, посещение сайтов? Держите три примера работы с Google ***ytics и понятных отчета по ним, которые можно продемонстрировать, не открывая доступ к аккаунту....

27 02 2025 22:28:21

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

Сколько стоил клик в Google Ads и Яндекс.Директ в Казахстане во втором квартале 2019 года Алексей Селезнев, руководитель отдела аналитики Netpeak делится статистикой по самым дорогим и самым дешевым тематикам, регионам размещения рекламы, каналам и устройствам. Узнать больше!...

26 02 2025 21:42:27

Продвижение интернет-магазина с помощью Google Рекламы: первые шаги

Продвижение интернет-магазина с помощью Google Рекламы: первые шаги Какие типы кампаний и ключевых слов стоит первыми запускать в Google Рекламе? Советы новичкам...

25 02 2025 1:34:18

3 фишки про продвижение постов в Facebook

3 фишки про продвижение постов в Facebook Если маркетер хочет привлечь к бренд-контенту дополнительное внимание, стоит воспользоваться опцией Promote post....

24 02 2025 17:32:11

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

Сколько стоил клик в Google Ads в Казахстане в первом квартале 2020 года — исследование Netpeak Важно: понимания стоимость конверсии и необходимое количество конверсий, вы можете прогнозировать, сколько денег на рекламу нужно выделить. Вот почему вам может быть полезно это исследование. Читать....

23 02 2025 10:50:31

Как написать обзор товара

Как написать обзор товара Структура обзора, правила написания и важные хаpaктеристики этого формата. Подача информации в обзоре и запрещенные методы, которые отпугнут клиентов. Узнать больше!...

22 02 2025 15:32:23

Как быстро снизить стоимость конверсий в нише элитных автоуслуг — кейс Аверс-центр

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

21 02 2025 8:38:30

Продвижение с помощью сетки сайтов — как строить PBN

Продвижение с помощью сетки сайтов — как строить PBN PBN (Private Blog Network) — приватная/частная сеть блогов, сайты-сателлиты, сетки сайтов. Строить их долго, дорого, но это работает....

20 02 2025 13:17:42

Форматы рекламных объявлений в Facebook и Instagram

Форматы рекламных объявлений в Facebook и Instagram Гайд по рекламе для SMM-, PPC-специалистов, блогеров и владельцев бизнеса...

19 02 2025 17:30:49

7 признаков некачественных онлайн-курсов

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

18 02 2025 11:25:39

Семь улучшений Netpeak: построение репутации для нового бренда, продвижение в TikTok и PR-статьи в журнале

Семь улучшений Netpeak: построение репутации для нового бренда, продвижение в TikTok и PR-статьи в журнале Еще организовали новую онлайн-конференцию, запустили опрос онлайн-покупателей, создали SEO-услугу для крупного бизнеса, рассказали, как вести В2С и В2В аккаунты в Instagram и ввели консультации SMM-специалистов....

17 02 2025 18:59:43

Как найти партнера среди подрядчиков — советы предпринимателям

Как найти партнера среди подрядчиков — советы предпринимателям Опрос экспертов. Как правильно искать подрядчиков, которые станут партнерами для вашего бизнеса? Как долго работать с партнерами и не испортить отношения? На что обращать внимание в первую очередь, а на что можно закрыть глаза?...

16 02 2025 5:52:23

Как сделать email-рассылку в MailChimp

Как сделать email-рассылку в MailChimp Инструкция для новичков: как быстро отправить почтовую рассылку клиентам...

15 02 2025 10:17:29

SEO-продвижение для службы доставки еды в Украине — рост бесплатного трафика на 477%

SEO-продвижение для службы доставки еды в Украине — рост бесплатного трафика на 477% Кейс продвижения Pizza House — ROMI 709,9%. От старта с дублями страниц и постановки целей и задач продвижения, проведения технического аудита, аналитики, анализа поисковых фраз, выбора контента до экспериментов с метатегами, увеличения среднего чека и планов на будущее...

14 02 2025 19:57:12

Google по Монтессори, или Разворот от каверзных интервью

Google по Монтессори, или Разворот от каверзных интервью Правильно задать вопрос или сфоримулировать ответ на собеседовании это еще далеко не все. Рецензия на книгу Ласло Бока «Работа рулит»...

13 02 2025 16:43:34

Как я получил 39% ответов после холодной рассылки 100 самым влиятельным экспертам в мире B2B-продаж

Как я получил 39% ответов после холодной рассылки 100 самым влиятельным экспертам в мире B2B-продаж Образец рассылки от создателе Replyapp.io Олег Белозор, на которую ответили самые влиятельные эксперты в мире в2в продаж...

12 02 2025 15:33:58

Почему пользователи удаляют ваше приложение — обзор инструментов для анализа Uninstall Rate

Почему пользователи удаляют ваше приложение — обзор инструментов для анализа Uninstall Rate Иногда удержать пользователя сложнее, чем мотивировать загрузить приложение. Семь инструментов для анализа Uninstall Rate....

11 02 2025 2:40:39

Сколько стоил клик в Google Ads и Facebook в Украине в первом квартале 2019 года

Сколько стоил клик в Google Ads и Facebook в Украине в первом квартале 2019 года Данные по 42,5 млн кликов в 25 тематиках и 391 городу...

10 02 2025 2:20:57

Как анализировать эффективность рекламы в Google ***ytics? Часть первая: персональные сводки

Как анализировать эффективность рекламы в Google ***ytics? Часть первая: персональные сводки Оценить эффективность рекламной кампании с учетом специфики и целей конкретного клиента помогут персональные сводки...

09 02 2025 1:28:18

Как повлиять на решение покупателя

Как повлиять на решение покупателя Технология «лёгкость восприятия» — инструмент, который поможет убедить клиентов покупать именно у вас...

08 02 2025 20:18:58

Как поисковые системы индексируют сайт

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

07 02 2025 0:14:47

Перенос кампании из Google Ads в Яндекс.Директ с помощью таблиц Google

Перенос кампании из Google Ads в Яндекс.Директ с помощью таблиц Google Таблицы Google позволят перенести рекламную кампанию и сохранить при этом ключевые слова в разных типах соответствия. Подробный мануал — в новом посте....

06 02 2025 1:31:32

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

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

05 02 2025 8:28:57

Восемь советов успешного запуска рекламной кампании в myTarget

Восемь советов успешного запуска рекламной кампании в myTarget Делимся фишками, которые облегчат работу как новичкам, так и специалистам....

04 02 2025 11:13:26

Звуковые уведомления в Facebook основаны на аккорде Fmaj7, ноты которого — FACE

Звуковые уведомления в Facebook основаны на аккорде Fmaj7, ноты которого — FACE История от первого лица про звуковые сигналы в Facebook....

03 02 2025 3:16:56

Как работать с задачами — советы от Netpeak

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

02 02 2025 11:37:12

Как работает баннерная реклама — объясняем на примере кейса

Как работает баннерная реклама — объясняем на примере кейса О феномене Баадера-Майнхофа — как на самом деле работают системы баннерной рекламы в интернете...

01 02 2025 0:51:48

Результаты рейтинга зарплат специалистов в сфере интернет-маркетинга за первое полугодие 2018

Результаты рейтинга зарплат специалистов в сфере интернет-маркетинга за первое полугодие 2018 SEO-специалисты в Киеве получают в два раза больше, чем жители других городов Украины. Middle лидирует среди должностей как PPC, так и SEO-специалистов. Самая высокооплачиваемая должность — Head of PPC $1900. Узнать больше!...

31 01 2025 18:26:56

16 советов для продуктового бизнеса от спикеров конференции SaaS Nation

16 советов для продуктового бизнеса от спикеров конференции SaaS Nation Истории бизнеса и советы от Игоря Жаданова (Readdle), Александра Галкина (Competera) и Рагнара Саас (Pipedrive)...

30 01 2025 3:27:52

Контекстная реклама для магазина мебели в Казахстане — как мы узнали, что реальная рентабельность рекламы выше на 390%

Контекстная реклама для магазина мебели в Казахстане — как мы узнали, что реальная рентабельность рекламы выше на 390% Как мы с помощью Call Tracking узнали настоящую рентабельность контекстной рекламы для магазина мебели...

29 01 2025 15:36:59

Системные улучшения Netpeak — демо услуг PPC, чат любителей блога и сервис поиска ошибок рекламных кампаний в Cluster

Новости, доработки и обновления в услугах, блоге, Академии блога и Кластере....

28 01 2025 19:35:25

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

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

27 01 2025 22:15:41

Сколько стоят услуги копирайтера

Сколько стоят услуги копирайтера Непросто найти ответственного автора, готового проводить сео-оптимизацию своих статей, исправлять ошибки, вносить дополнения в материал. Это очень дорого? Узнать!...

26 01 2025 13:26:38

Как сделать отчет для поиска перспективных товаров

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

25 01 2025 21:23:50

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