Frage

Ich brauche für Elemente in einer Tabelle suchen, die alle meine gewünschten Werte in einer Spalte d Ich habe Tabelle:

ID :    1 2 3 3 2 2 2 1 1 3
VALUE : 5 6 5 3 6 7 2 1 9 0

Ich möchte ein StoredProc eine Liste von Werten zum Beispiel geben ( „6,7,2“), und es gibt mir alle IDs, die alle die angegebenen Werte in diesem Fall würde es nur den Wert 2

Wenn ich für solche, die mindestens einen der Werte suchen, wollte ich wissen, könnte ich „IN“ verwenden, aber alle Werte habe ich nichts gefunden.

Vielen Dank im Voraus

Afshin Arefi

War es hilfreich?

Lösung

In SQL Server 2008 können Sie verwenden Tabellenwertparameter .

Damit können Sie in einer Tabelle von Werten zu einer gespeicherten Prozedur zu übergeben und behandeln sie wie jede andere Tabelle (Einsatz in Unterabfragen, schließt sie usw.).

Im Hinblick auf die Abfrage - wenn Sie einen Tabellenwert-Parameter verwenden möchten, können Sie es für die Größe (wie viele Zeilen), die Verwendung IN in Verbindung mit einem GROUP BY auf dem ID Feld und einem HAVING, die zählt die Anzahl der Zeilen abfragen .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top