Telegram Group & Telegram Channel
Как проверить свой SQL код на адекватность?


🔸1. Нужно понимать диапазон значений для показателей, которые ты считаешь.

Например, если я пишу SQL запрос для интернет магазина для подсчета конверсии в первую покупку, то знаю, что диапазон значений этого показателя 0-100%. Если получилось, что то вне этого диапазона, то где-то ошибка.

100% конверсии в первую покупку я тоже никогда не видел. В реальности диапазон ещё меньше, обычно 0-10%. Т.е. все что вне этого диапазона это подозрительно.

🔸 2. Обычно запрос представляет из себя набор отдельных подзапросов - CTE.

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

🔸 3. После того как написал sql запрос можно сделать кросс чек и сравнить данные исходных таблиц и данные конечной таблицы.

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

🔸 4. Если у тебя есть какая-то система с исходными данными, то можно сравнить рассчитанный на SQL показатель с показателем в этой системе.

Например у меня в интерфейсе Яндекс метрики по сегменту мобильных устройств конверсия 3%, а на сырых данных я насчитал 10%, довольно большое расхождение, нужно перепроверить.



group-telegram.com/y_borzilo/943
Create:
Last Update:

Как проверить свой SQL код на адекватность?


🔸1. Нужно понимать диапазон значений для показателей, которые ты считаешь.

Например, если я пишу SQL запрос для интернет магазина для подсчета конверсии в первую покупку, то знаю, что диапазон значений этого показателя 0-100%. Если получилось, что то вне этого диапазона, то где-то ошибка.

100% конверсии в первую покупку я тоже никогда не видел. В реальности диапазон ещё меньше, обычно 0-10%. Т.е. все что вне этого диапазона это подозрительно.

🔸 2. Обычно запрос представляет из себя набор отдельных подзапросов - CTE.

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

🔸 3. После того как написал sql запрос можно сделать кросс чек и сравнить данные исходных таблиц и данные конечной таблицы.

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

🔸 4. Если у тебя есть какая-то система с исходными данными, то можно сравнить рассчитанный на SQL показатель с показателем в этой системе.

Например у меня в интерфейсе Яндекс метрики по сегменту мобильных устройств конверсия 3%, а на сырых данных я насчитал 10%, довольно большое расхождение, нужно перепроверить.

BY Борзило


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/y_borzilo/943

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Since January 2022, the SC has received a total of 47 complaints and enquiries on illegal investment schemes promoted through Telegram. These fraudulent schemes offer non-existent investment opportunities, promising very attractive and risk-free returns within a short span of time. They commonly offer unrealistic returns of as high as 1,000% within 24 hours or even within a few hours. In the United States, Telegram's lower public profile has helped it mostly avoid high level scrutiny from Congress, but it has not gone unnoticed. In 2018, Russia banned Telegram although it reversed the prohibition two years later. Artem Kliuchnikov and his family fled Ukraine just days before the Russian invasion. He said that since his platform does not have the capacity to check all channels, it may restrict some in Russia and Ukraine "for the duration of the conflict," but then reversed course hours later after many users complained that Telegram was an important source of information.
from ru


Telegram Борзило
FROM American