powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Парсинг и поиск
2 сообщений из 2, страница 1 из 1
Парсинг и поиск
    #37387775
Ludovic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.
Бьюсь над проблемой долго.
Проблема следующая.
Есть таблица, в которой есть столбец вида codes.
В нем возможны значения, типа 11,34,23 и т.д. (это в ячейке)
По @record_id = record_id можно получить codes.
Вопрос:
Необходимо для каждой ячейки получить все строки, в которых есть совпадения по коду. Т.е., к примеру
record_id codes
1 11,15
2 44,9
3 14,15
4 15,9
5 20,9
6 15,88

Тогда для record_id=3 должны получить строки 1 11,15
6 15,18.

Какое "недо" решение я пока придумал. Создаю динамическую таблицу, в ячейках которой будут значения распарсинные по запятой. Дальше в цикле пробегаю по всем ясейкам в этой таблице и сравниваю, есть ли вхождения в основной таблице. Но при каждом шаге выводится новая таблица, и в таком случае просто результат затирается.
declare @code varchar(max) = '1719,750'
declare @str varchar(max)
set @str = (select @CODE)
select @str='select ''' + replace(@str, ',', ''' as val union all select ''') + ''''
declare @t table(id int identity, val varchar(100))
insert into @t
exec (@str)
declare @id int = 1

while @id <= (select COUNT(*) from @t )
begin
select * from BASE_TABLE bs
where bs.CODE LIKE ('%' + (select val from @t where val!='' and id = @id) + '%'))
set @id = @id + 1;
end

Есть ли у кого мысли? Нужно то получить простой select, а не кучу.
Заранее спасибо.
...
Рейтинг: 0 / 0
Парсинг и поиск
    #37387828
Ejhi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ludovic,

Лучше всего будет создать новую таблицу
idrecord_idcode111121153244429.........

А там уже заджойнить ее саму с собой по полю code.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Парсинг и поиск
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]