|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.05.2017, 11:38 | #1 |
Новичок
Джуниор
Регистрация: 29.05.2017
Сообщений: 3
|
Цикл в запросе MS SQL
Доброго дня!
Есть одна таблица tblMain с тремя полями: ID Info MainID 1 первый NULL 2 второй 1 3 третий 2 4 четыре 3 5 пять 4 Поле MainID - это родительский ID предыдущей записи.. При выборе пятой записи мне нужно проследить всю цепочку до места где MainID = NULL У меня это работает так: Выбираем пятую строку - 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 В идеале хотел получить все записи в одну строку "пять - четыре - третий - второй - первый" Последний раз редактировалось stsg; 29.05.2017 в 11:42. |
29.05.2017, 11:54 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
29.05.2017, 11:55 | #3 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Код:
программа — запись алгоритма на языке понятном транслятору
|
|
29.05.2017, 12:22 | #4 | |
Новичок
Джуниор
Регистрация: 29.05.2017
Сообщений: 3
|
Цитата:
Но это тоже самое, что и у меня - проблема в том, что я не знаю сколько всего будет "t" - сегодня их будет 5 а завтра 25 и мне каждый раз придется дописывать запрос, а хотелось как то автоматизировать.. |
|
29.05.2017, 12:34 | #5 | |
Новичок
Джуниор
Регистрация: 29.05.2017
Сообщений: 3
|
Цитата:
|
|
29.05.2017, 13:30 | #6 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
переменная в sql-запросе | Kaela | Общие вопросы C/C++ | 2 | 28.03.2013 20:02 |
if в запросе sql | serres | PHP | 2 | 28.05.2010 12:32 |
Группировка в SQL запросе | wm_leviathan | SQL, базы данных | 8 | 09.03.2010 13:36 |
Переменные в запросе SQL | Talemir | БД в Delphi | 2 | 22.08.2009 21:22 |
Ошибка SQL запросе. | EVG44 | БД в Delphi | 2 | 21.10.2007 22:42 |