Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Santa89 Member Откуда: Сообщений: 1497 |
Есть табличка с данными по реструктуризованным кредитам (это когда один кредит берется, чтобы погасить задолженность по другому)create table #kredit_table ( Кредит_ID int, Дата_Открытия date, Дата_Закрытия date, Первичный_Кредит int ) insert into #kredit_table select 77,'2011-01-01','2011-12-01',null union all select 88,'2012-01-01',null,null union all select 101,'2013-01-01','2013-05-01',null union all select 102,'2013-05-01','2013-10-01',101 union all select 103,'2013-10-02',null,102 Никак не могу найти решение, чтобы отобрать только кредиты, участвовавшие в реструктуризации. То есть нужно дополнительное поле - "участие в реструктуризации" (1,0). Полагаю что тут должна быть рекурсия. Прошу помочь! В приложенном скрине пример: Кредиты 77 и 88 не участвовали в реструктуризации, а остальные - да. Тоесть кредит 102 был взять на погашение кредита 101, кредит 103 - на погашение 102. К сообщению приложен файл. Размер - 24Kb |
27 фев 14, 07:00 [15637134] Ответить | Цитировать Сообщить модератору |
Добрый Э - Эх
Guest |
select * from #kredit_table t0 where Первичный_Кредит is null and not exists(select null from #kredit_table t1 where t0.Кредит_ID = t1.Первичный_Кредит) |
27 фев 14, 07:06 [15637135] Ответить | Цитировать Сообщить модератору |
Santa89 Member Откуда: Сообщений: 1497 |
Добрый Э - Эх, спасибо! |
27 фев 14, 07:29 [15637156] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |