У меня есть поле varchar, которое содержит строку типа "10,11,12,13". Как я могу использовать эту строку CSV, чтобы присоединиться к другой таблице с этими идентификаторами? Вот подход, который я сейчас использую:
select *
from SomeTable a
WHERE (',' + @csvString + ',') LIKE '%,' + CONVERT(varchar(25), a.ID) + ',%'
Где @csvString равно "10,11,12, ...". Я намерен также использовать этот метод в качестве условия соединения.
Этот метод работает, но он довольно медленный (использование CAST не улучшает скорость).
Я понимаю, что наличие CSV в базе данных, как это обычно бывает очень глупой идеей, но я ничего не могу с этим поделать.