Вам нужно разделить строку 1,3,4
, возвращаемую подзапросом, на отдельные значения int
. SQL Server не имеет встроенной функции для этого, но вы можете использовать эту пользовательскую функцию .
Создайте функцию dbo.Split
в вашей базе данных, а затем перепишите свой запрос следующим образом:
SELECT ID, Title
FROM c
WHERE ID IN
(
SELECT s
FROM dbo.Split(',', '1,3,4')
)
Я заменил подзапрос примерами 1,3,4
, чтобы сократить запрос и упростить его понимание.