Цикл в запросе MS SQL

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Цикл в запросе MS SQL

Re: Цикл в запросе MS SQL

Слива » 29 май 2017, 16:02

А где там консоль вообще в Accesse? Куда данные-то выводить?

Цикл в запросе MS SQL

stsg » 29 май 2017, 11:53

Доброго дня!
Есть одна таблица tblMain с тремя полями:
ID Info MainID
1 первый NULL
2 второй 1
3 третий 2
4 четыре 3
5 пять 4
Поле MainID - это родительский ID предыдущей записи..
При выборе пятой записи мне нужно проследить всю цепочку до места где MainID = LULL
У меня это работает так:
Выбираем пятую строку - SELECT Info FROM tblMain WHERE ID = <MainID> - тут мы видим запись четыре - SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = <MainID>) - тут мы видим запись три - SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = <MainID>)) - тут мы видим запись два - SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = (SELECT Info FROM tblMain WHERE ID = <MainID>))) - тут мы видим запись один...
Нужно преобразовать это все в цикл WHILE - у меня не выходит...
Конец цикла должен быть когда MainID = NULL
В идеале хотел получить все записи в одну строку "пять - четыре - третий - второй - первый"

Вернуться к началу