![]() |
Datenbank: SQL Server 2000 • Zugriff über: SQL Skript
[SQL] Select mit dynamischer Parameteranzahl
Hi zusammen,
ich möchte eine SQL-Abfrage erstellen, bei der die Anzahl der Parameter noch nicht fest steht. z.B. soll nach verschiedenen Namen gesucht werden.
SQL-Code:
Wie kann ich eine solche Abfrage mit einer dynamischen Anzahl an zu suchenden Namen erstellen?
SELECT Name
FROM Tabelle WHERE Name like '%Meier%' or Name like '%Mueller%' Vielen Dank für eure Hilfe Lorenz |
Re: [SQL] Select mit dynamischer Parameteranzahl
Versuch es mal mit in
|
Re: [SQL] Select mit dynamischer Parameteranzahl
@mkinzler
in und like funktionieren zusammen? |
Re: [SQL] Select mit dynamischer Parameteranzahl
Stimmt könnte schwer werden.
Dann bietet sich eigentlich nur eine SP an, welche die Abfrage dynamisch generiert. |
Re: [SQL] Select mit dynamischer Parameteranzahl
Kannst du mit bitte einen Tipp geben, wie die SP aussehen kann?
|
Re: [SQL] Select mit dynamischer Parameteranzahl
Hallo,
in wird nicht funktionieren, da es keine Joker erlaubt. Eine etwas "blöde" Variante könnte sein:
SQL-Code:
Dieses SQL liefert natürlich kein Ergebnis aber:
SELECT Name
FROM Tabelle WHERE 1 = 2 Wenn Du nun hergehst und für jeden Namen ein OR anfügst, so bekommst Du ein gültiges SQL, dass Ergebnisse liefert und in der Zahl der zu suchenden Namen fast grenzenlos ist.
SQL-Code:
SELECT Name
FROM Tabelle WHERE 1 = 2 OR Name like '%Meier%' OR Name like '%Mueller%' ... OR Name like '%Zeppelin%' |
Re: [SQL] Select mit dynamischer Parameteranzahl
@nahpets:
Da sehe ich jetzt nicht, wie ich das mit dynamischen Parametern lösen könnte, dafür muss ich ja die Anzahl kennen. |
Re: [SQL] Select mit dynamischer Parameteranzahl
Zitat:
-gehst durch diese Liste und fügst dann die entsprechende Bedingung ein |
Re: [SQL] Select mit dynamischer Parameteranzahl
Hallo,
Zitat:
Leider weiß ich nicht, ob diese Verfahrensweise von jeder Datenbank unterstützt wird. |
Re: [SQL] Select mit dynamischer Parameteranzahl
Hallo,
von dem Vorgehen von nahpets #6 möchte ich abraten, weil dann der Vorteil von Parametern nicht genutzt werden kann. Alternativen werden in ![]() Vielleicht ist etwas davon eine sinnvolle Anregung. Gruß Jürgen Meine Güte, seid Ihr schnell. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz