avatar
Мир аналитика данных
@analysts_world
05.09.2022 23:42
Метод format ??

По понедельникам я гружу много разных данных за предыдущую неделю. Это и трафик, и количество лидов, и выручка в разных нишах, и тип продаж (новому клиенту продали или повторному), и количество писем отправленных, и прочее, прочее.
Каждый раз прописывать в SQL даты прошлой недели мне надоело.
Вот так это выглядело:
WHERE created_date >= '2022-08-29' and created_date < '2022-09-05'

Я добавила в скрипт метод format. Ведь он не только меняет форматирование при выводе, но еще и принимает аргументы. Теперь в начале большого скрипта у меня прописаны даты:

start_date_2022 = '2022-08-29'
end_date_2022 = '2022-09-05'

А в самих запросах (тут пример расчета у нас трафика) я уже везде одинаково в WHERE обращаюсь к параметрам.
Это выглядит так:
query = """
select
uniq(visitor_id) visitor_count,
uniqIf(visitor_id, has_registered) register_count
from stat.visit
where started_date >= '{params[0]}' and started_date < '{params[1]
}'
""".format(params=[start_date_2022, end_date_2022])

params[0] – это start_date_2022,
params[1] – соответственно end_date_2022.

Короче говоря, оптимизируемся, друзья! ?
? 23
? 3
? 2
11 6 1.8K

Обсуждение 11

Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.

Обсудить в Telegram