TGViewer
Мир аналитика данных Мир аналитика данных @analysts_world · 4.56K subscribers
Post #83 3.72K
🔥 Как тестировать SQL код при решении тестовых? Есть библиотека Pandasql. 🛠 Она позволяет выполнять SQL-запросы прямо в Юпитере, а вместо базы можно просто создавать DataFrame.
Например:
from pandasql import sqldf
import pandas as pd
# Создание DataFrame user_actions
user_actions = pd.DataFrame({'user_id': [1, 1, 2, 3, 3],
'order_id': [101, 102, 103, 104, 105],
'action': ['create_order', 'cancel_order', 'create_order', 'create_order', 'cancel_order']})

Предположим, у нас есть таблица user_actions с информацией о действиях пользователей на нашем сервисе, включая id пользователя, id заказа и тип действия. Мы хотим отобрать всех пользователей, которые ни разу не отменяли заказы.
Выполнение SQL-запроса с помощью pandasql:
query = """
SELECT DISTINCT user_id
FROM user_actions
WHERE user_id NOT IN (
SELECT user_id
FROM user_actions
WHERE action = 'cancel_order'
)
"""
sqldf(query)

Мы используем подзапрос, чтобы получить все user_id пользователей, которые отменили заказы, и затем исключаем этих пользователей из основного запроса с помощью оператора NOT IN.

Таким образом, мы получаем результат, который содержит только user_id пользователей, которые ни разу не отменяли заказы.

Учитывая, что осень - пора активных собеседований, то кому-то это точно пригодится. ✔️

P.S. Пост про то, какие онлайн сайты можно использовать для SQL у меня тут
  • 🔥 22
  • 👍 2
More from @analysts_world
  1. Sep 21, 2026📊 Задачка с собеседования Ну что, по итогам голосования большинство хотят задачки и sql.…
  2. Sep 14, 2026Post #345
  3. Sep 14, 2026Что-то я тут прям зачастила с A/B тестами 😅 Смотрю на последние посты и такое чувство, чт…
  4. Sep 1, 2026🎒 С 1 сентября, друзья! Сегодня как раз отправила своих детей в школу – и вот это чувство…
  5. Aug 24, 2026Вне выборки Обычно здесь про SQL, Python и AB-тесты. Но не всё, что важно, попадает в выбо…
  6. Aug 20, 2026Fuckup Night от создателей Trisigma, Ares и karpov.courses Согласитесь, ивенты, где все де…
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 →