вы можете попробовать использовать sp_executesql:
DECLARE @mylist integer_list_tbltype,
@sql nvarchar(MAX)
SELECT @sql = N'SELECT p.ProductID, p.ProductName
FROM Northwind..Products p
WHERE p.ProductID IN (SELECT n FROM @prodids)'
INSERT @mylist VALUES(9),(12),(27),(37)
EXEC sp_executesql @sql, N'@prodids integer_list_tbltype READONLY', @mylist
и если это не сработает, вам, возможно, придется создать процедуру-обертку в удаленной БД, где вы передадите строку CSV, а процедура-обертка разделит ее и создаст таблицу (теперь используя локальный тип таблицы), чтобы перейти в фактическую процедуру. См. этот ответ для объяснения того, как разбить строку CVS.