Дана таблица logs с событиями пользователей (user_id, item_id, action_type, timestamp). Напишите SQL-запрос, чтобы для каждого пользователя найти ID последнего товара, на который он кликнул.

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

Короткий ответ

Что ответить на собеседовании

Чтобы найти последнюю покупку по человеку в данных, обычно нужно сгруппировать данные по идентификатору человека и выбрать запись с максимальной датой покупки. Например, если данные хранятся в таблице с колонками userid, purchasedate и purchaseid, можно использовать SQL-запрос:

Подробный разбор

Ответ с пояснениями

Чтобы найти последнюю покупку по человеку в данных, обычно нужно сгруппировать данные по идентификатору человека и выбрать запись с максимальной датой покупки. Например, если данные хранятся в таблице с колонками user_id, purchase_date и purchase_id, можно использовать SQL-запрос:

SELECT user_id, purchase_id, purchase_date
FROM purchases p1
WHERE purchase_date = (
  SELECT MAX(purchase_date)
  FROM purchases p2
  WHERE p2.user_id = p1.user_id
)

В программировании на Python с использованием pandas это можно сделать так:

import pandas as pd

# df - DataFrame с колонками user_id, purchase_date, purchase_id
last_purchases = df.sort_values('purchase_date').groupby('user_id').tail(1)

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

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее