Hallo,
Ziel ist es eine T-SQL Funktion zu definieren, welcher ich eine Liste übergeben kann, um Sie in der Where-Klausel zur Einschränkung der Auswahl verwenden.
Declare @list2 varchar(255)
Set @list2 = replace(replace(@list,'/',char(44)),'.',char(39))
... select * from ... Where type in (@list2)
verstehe ich Dich richtig? Du möchtest eine Zeichenfolge zusammenbauen, die eine T-SQL-Anweisung darstellt und diese ausführen.
Was muss ich ändern,um mit dieser Funktion das gewünschte Ergebnis zu erhalten?
Du könntest die resultierende Zeichenfolge mit EXECUTE (kurz EXEC) ausführen, siehe z.B. </archiv/2006/3/t125385/#m808888>. Bei SQL-Sever 2005 sind übrigens Zeichenfolgen bis zu 2GB zugelassen. Beachte die Hinweise zu SQL-Injection.
Freundliche Grüße
Vinzenz