2016-12-15 4 views
0

Ich habe einen großen Datensatz, der die Namen und Adressen unserer Kunden enthält. Ich muss dem Benutzer erlauben, diesen Datensatz zu durchsuchen, jedoch hat der Benutzer selten das Schlüsselfeld, das notwendig ist, um die Suche einfach zu machen. Sie haben jedoch drei Schlüsselwerte, die ihnen eine vernünftige Untermenge zum Arbeiten bringen. Sie haben den Nachnamen des Kunden, Straße und Postleitzahl. Obwohl dies kein einziges Match sicherstellt, sollte ich in den meisten Fällen in der Reichweite von weniger als 10 liegen. Ich schätze, die meisten werden nur 1 Wert zurückgeben.
Ich möchte, dass der Benutzer mehrere Zeilen der drei Werte übermittelt und dann die entsprechenden Werte an den Benutzer zurückgibt. Ich schaue auf einen neuen Wert in meiner Tabelle, die die drei Werte verkettet hat, aber ich hätte ungefähr 19 MM Reihen der betroffenen Daten. Ich habe mich gefragt, ob es einen Weg mit SSRS gab, eine Array-Variable mit den drei Feldern einzureichen und dann mehrere Zeilen basierend auf den Werten zurückzugeben? Ich verwende SQL Server 2012 als Datenbank.Verwenden Sie eine mehrzeilige Variable Array in einem SSRS-Bericht

+0

Könnten Sie nicht eine Reihe von OR-Anweisungen in der SQL verwenden? So etwas wie 'wo Nachname wie '%' + (@var) + '%' oder Postleitzahl wie '%' + (@var) + '%' oder Straße wie '%' + (@var) + '%'' – BishNaboB

+0

Sie müssten die Variable aufteilen und dann den OR-Operator in Ihrer SELECT-Anweisung verwenden, um die Daten zurückzugeben. –

Antwort

0

Ja, wie BishNabo schrieb, fügen Sie in Ihrem SQL einfach die folgende Struktur mit Ihren Feld- und Tabellennamen hinzu. Ich habe @var in Platzhalter eingepackt, um Teilwerte zu ermöglichen. Dieses Format erfordert, dass alle drei vom Benutzer eingereicht werden.

Where tbl.fld_LName LIKE '%@LastName%' and tbl.fld_StreetName LIKE '%@Street%' and tbl.fld_ZipCode LIKE '%@Zip%' 

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/d6952bd0-af17-403f-8402-02759a9517fb/execute-tsql-on-ssrs-2012-with-3-parameters?forum=transactsql

Verwandte Themen