Сеня рядом и Белла пришел. Былое
SQL: ROW_NUMBER(), RANK(), DENSE_RANK()
При запросах к БД через SQL часто бывает нужно ранжировать строки таблицы по какому-либо значению и потом, например применять фильтр. Для этого очень удобно использовать функции с окнами: ROW_NUMBER(), RANK(), DENSE_RANK(). Как использовать смотрим в Jupyter Notebook на тестовой БД SQLite. Открываем ноутбук, пишем: import pandas as pd
import sqlite3
from contextlib import contextmanager
from IPython.display import display data = pd.DataFrame({ 'student': ['Жек Воробьёв', 'Жек Воробьёв', 'Жек Воробьёв',...
Оконные функции в SQL
Давайте отдельно разберем этот раздел. Ведь знание оконных функций превращает вас в глазах интервьюера из новичка в опытного тестера. Да и к тому же позволяет решать некоторые рабочие задачи гораздо проще. Оконные функции (window functions) в SQL позволяют выполнять вычисления по набору строк, связанных с текущей строкой, без необходимости группировать результат, как это делается в агрегатных функциях. Оконные функции не изменяют количество строк в результате и могут быть использованы с предложением OVER для выполнения вычислений в пределах определённого окна (набора строк)...