Добавьте подзапрос в cte, чтобы получить результаты из двух таблиц
declare @nodeid int = '1'; with cte as ( select cust_ID, name,null lnode, null rnode from user_detail where cust_ID = @nodeid union all select t.cust_ID,t.name, ISNULL(cte.lnode, CASE WHEN t.joinside = 0 THEN 1 ELSE 0 END) lnode, ISNULL(cte.rnode, CASE WHEN t.joinside = 1 THEN 1 ELSE 0 END) rnode from user_detail t inner join cte on cte.cust_ID = t.parentid ) select cust_ID,name from cte where rnode='0' option (maxrecursion 0)
текущий сценарий:
имя cust_id
1 Гарри
5 Рави
7 Оперативная память
9 Томми
10 Роми
Чего я хочу, так это:
статус имени cust_id(таблица рассрочки)
1 Гарри заплатил
5 Рави не платят
7 Оперативная память не оплачена
9 Томми заплатил
10 Роми заплатила
теперь я объясню, что я хочу: приведенный выше запрос получает результаты только из таблицы user_detail. теперь я хочу изменить запрос таким образом, чтобы он также искал в таблице "рассрочка" столбец "статус" соответствующего cust_id (который возвращает приведенный выше запрос).
Измененный запрос получит значение status из таблицы рассрочки на основе cust_id.
И запрос покажет результаты в третьем столбце, как показано на 2-м скриншоте.
я не очень хорошо знаком с cte и вложенными запросами. Я надеюсь, что вы, ребята, поймете мою проблему.
Что я уже пробовал:
я не знаком с cte и вложенными подзапросами