Дубликат : TSQL манипулирование строк varchar
Я строю динамический оператор SQL из параметров из отчета служб отчетов. Службы отчетности передают параметры MutiValue в базовом формате CSV. Например, список состояний может быть представлен следующим образом: AL, CA, NY, TN, VA
В операторе SQL все в порядке:
WHERE customerState In (@StateList)
Однако динамический вариант не в порядке:
SET @WhereClause1 = @WhereClause1 + 'AND customerState IN (' + @StateList + ') '
Это потому, что оно переводится как (недопустимый SQL):
AND customerState IN (AL,CA,NY,TN,VA)
Для обработки нужно что-то вроде этого:
AND customerState IN ('AL','CA','NY','TN','VA')
Есть ли какое-нибудь классное выражение, которое я могу использовать, чтобы вставить одинарные кавычки в мой динамический SQL?