TGViewer
Я твой продукт анализировал Я твой продукт анализировал @datadeepdive · 1.68K subscribers
Post #123 1.5K
Перебирал тут диск, нашёл старые консоли. Вот, например, прикольный. Это запрос в кликхаус из алертов Redash, который обновлялся каждый час и отправлялся в Slack, тегая ответственного, если срабатывало условие, когда байер тратил больше дневного капа.

Какие только костыли не выдумывали 😀

select if(length(slack_string) > 0, slack_string, 'OK') as slack_string
from (select arrayStringConcat(
arrayMap(x - > toString(x),
groupArray(if(to_alert = 'y', '<@user>\n', '') ||
'Campaign: ' || campaignName || '\n' ||
'Current cost: $' || toString(daily_cost) || '\n' ||
'Daily cap: $' || toString(daily_cap)
)),
'\n\n') as slack_string
from (select campaignName,
round(sum(daily_cost), 2) as daily_cost,
round(daily_cap, 2) as daily_cap,
case
when daily_cost >= toFloat64(daily_cap)
then 'y'
else 'n' end as to_alert
from (select campaign,
spot,
spot_id,
name as spot_name,
daily_cost as daily_cost,
daily_cap as daily_cap
from (select *
from (select campaign,
spot,
sum(cost) as daily_cost
from client.actions
where date = today()
and owner = '5fbb4d4b61d6e257153928a1'
group by 1, 2)

left join (select id as campaign,
daily_cap
from client.campaings
where owner_id = '5fbb4d4b61d6e257153928a1') using campaign)

left join (select spot_id,
spot_aid as spot,
name
from client.dictionary_spot
where name like '%opunder%') using spot
where name like '%_%')

left join (select campaignId as campaign,
campaignName
from client.dictionary_campaigns) using campaign
group by 1, 3)
where to_alert = 'y')
  • 🤯 8
  • 👍 4
  • ❤ 1
More from @datadeepdive
  1. Jul 28, 2026📌 4/4, Бизнес уровень. Пожалуй самый сложный, и самый простой уровень одновременно. Понят…
  2. Jul 28, 2026Сори, отвлёкся 😀 📌 3/4, Продуктовый уровень. Этот раздел ставит перед собой почти филосо…
  3. May 31, 2026📌 2/4, Операционный уровень. Эта часть про то, насколько оптимально расходуются ресурсы.…
  4. May 31, 2026📌 Про оценку направления экспериментов, 1/4 Я как-то недавно выступал на одной конфе, рас…
  5. May 26, 2026А вот маленький демо датасет, если захочется глянуть как оно всё работает
  6. May 26, 2026Прикрутили типизацию аккаунтов, теперь в соло можно пользоваться без всяких ключей, с огра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →