Eine Lösung, die ich oft benutze...
Geben Sie Ihre Zahlenliste als VARCHAR(MAX)
an kommagetrennte Zeichenfolge, dann verwenden Sie eine der vielen dbo.fn_split()
Funktionen, die Leute online geschrieben haben.
Einer von vielen Beispiele online... SQL-benutzerdefinierte-Funktion-zum-Parsen-einer-begrenzten-Str
Diese Funktionen nehmen einen String als Parameter und geben eine Tabelle zurück.
Dann können Sie Dinge tun wie...
INSERT INTO @temp SELECT * FROM dbo.split(@myList)
SELECT
*
FROM
myTable
INNER JOIN
dbo.split(@myList) AS list
ON list.id = myTable.id
Eine Alternative besteht darin, sich Tabellenwertparameter anzusehen. Damit können Sie eine ganze Tabelle als Parameter an eine gespeicherte Prozedur übergeben. Wie, hängt von dem Framework ab, das Sie verwenden. Arbeiten Sie mit .NET, Java, Ruby usw. und wie kommunizieren Sie mit der Datenbank?
Sobald wir mehr Details über Ihren Anwendungscode wissen, können wir Ihnen sowohl den Client-Code als auch die Vorlage für gespeicherte SQL-Prozeduren zur Verwendung von Tabellenwertparametern zeigen.