Sql - вложенный цикл
У меня есть столик
Таблица А
--------
Один
Б
С
Д
Мне нужна таблица результатов, как показано ниже
Таблица А
--------
Один
Б
С
Д
AB
ДО Н.Э.
КОМПАКТ-ДИСК
АЗБУКА
BCD
ABCD
Любая помощь будет оценена по достоинству.
Что я уже пробовал:
Я попытался привести комбинацию из двух слов.
DECLARE @tbl_wordlist TABLE ( [Id] int identity, [Word] nvarchar(max) ) INSERT INTO @tbl_wordlist SELECT [Data] FROM Split('A B C D', ' ') -- LOGIC :::::: USING WHILE LOOP, GROUP TWO-TWO WORDS AND THEN INSERT INTO THE SAME TABLE DECLARE @MaxCount INTEGER DECLARE @Count INTEGER, @I INT DECLARE @Txt VARCHAR(MAX) SET @Count = 1 SET @I = 2 SET @Txt = (SELECT [Word] FROM @tbl_wordlist WHERE ID = @Count AND [Word] IS NOT NULL) SET @MaxCount = (SELECT MAX(ID) FROM @tbl_wordlist) WHILE @Count<@MaxCount BEGIN IF @Txt!='' SET @Txt=@Txt+' ' + (SELECT [Word] FROM @tbl_wordlist WHERE ID = (@I)) ELSE SET @Txt=(SELECT [Word] FROM @tbl_wordlist WHERE ID=@Count) SET @Count=@Count+1 SET @I=@I+1 INSERT INTO @tbl_wordlist([Word])Values(@Txt) SET @Txt = (SELECT [Word] FROM @tbl_wordlist WHERE ID = @Count AND [Word] IS NOT NULL) END SELECT * FROM @tbl_wordlist;
Karthik_Mahalingam
А как насчет переменного тока,bd,... и т. д
Member 13486774
Нет. Я просто хочу, чтобы последовательные слова были вместе.
CHill60
Вам вообще не нужны никакие петли. Когда я доберусь до ноутбука я попытаюсь опубликовать решение