Всем привет) Помогите, пожалуйста, с такой задачкой) Несколько часов просидел, так ничего и не надумал)
Например, есть такая таблица. В ней у каждого заемщика в каждый момент времени может быть только один открытый кредит. Но из-за сбоя, у одного заемщика, в прошлом, могло появиться несколько открытых кредитов в один момент времени, чего быть не должно. Как их отыскать (заемщиков и кредиты) с помощью запроса? Выделены красной рамкой на скрине.
Интуитивно понятно, что здесь нужно как то связать дату выдачи кредита (credit_date) и плановую дату закрытия (back_date). Но как?😅
Тут можно и простым запросом обойтись, но оконные функции будут лучше.
У нас уже есть условие: "Клиент не может иметь более одного открытого кредита."
Просто посчитайте количество открытых кредитов для клиента и выведите все, что имеют больше одного.
То есть простой запрос с использованием group by и having.
Если есть время и возможность использовать оконные функции, то стоит использовать их.
Я с ними не работал и в mysql 5.7 их еще нет.