Поговорим о распространённых приёмах работы с датами, которые находят применение на Data Science-собеседованиях и в обычной работе. При анализе данных весьма часто возникает необходимость извлечения из полей, хранящих даты, их частей, вроде года, дня или месяца. Нередко тому, кто проходит собеседование, предлагают, на основе поля, содержащего дату, вычислить или подсчитать какие-то показатели, сгруппированные по годам или по месяцам. Но подобное поле содержит информацию, сгруппированную по дням, поэтому для решения вышеописанной задачи нужно просто агрегировать данные на уровне месяцев или лет.
Аналитикам, занимающимся самыми разными делами, часто приходится решать подобные задачи. Но при их решении можно столкнуться с некоторыми сложностями. Например:
- Существует множество различных функций, которые либо делают одно и то же, либо работают схожим образом, но отличаются в некоторых деталях. Сложно выбрать именно ту функцию, которая нужна при решении конкретной задачи.
- В разных диалектах SQL имеются различные функции. Поэтому функция, которая подошла бы при работе с Postgres, может оказаться совсем неподходящей при работе с MySQL.
- Столбец в базе данных может иметь неподходящий формат или тип данных. Поэтому придётся потратить некоторое время на преобразование данных и на приведение их в подходящий вид. Это тоже может усложнить задачу.
Давайте начнём с самого простого. А именно — рассмотрим один SQL-пример и разберём несколько функций, которые можно использовать для разбора дат на составные части. Подобными делами часто приходится заниматься тому, кто работает в сфере Data Science. А
вот — видеодемонстрация приёмов работы с датами в SQL.