Heim  >  Artikel  >  Datenbank  >  Tutorial zur Verwendung von Platzhaltern zum Filtern in MySQL

Tutorial zur Verwendung von Platzhaltern zum Filtern in MySQL

巴扎黑
巴扎黑Original
2017-05-02 18:19:401634Durchsuche

Was sind Platzhalter?

Ein Platzhalter ist ein Sonderzeichen, das zum Abgleichen eines Teils eines Werts verwendet wird.

Suchmodus: Suchkriterien bestehend aus Literalwerten, Platzhaltern oder einer Kombination aus beidem.


1.ähnlicher Operator:

Alle zuvor eingeführten Operatoren sind für konstante Werte gefiltert. Unabhängig davon, ob es sich um Übereinstimmungen oder mehrere Werte handelt, ob es sich um das Testen größerer oder kleinerer Werte als einen bekannten Wert oder um die Überprüfung eines Wertebereichs handelt, ist der gemeinsame Nenner, dass die beim Filtern verwendeten Werte bekannt sind. Allerdings ist diese Filtermethode nicht immer einfach zu verwenden. Wie kann man beispielsweise nach allen Produkten suchen, deren Produktnamen den Text Amboss enthalten? Es ist unmöglich, einfache Vergleichsoperatoren zu verwenden, Sie müssen Platzhalter verwenden. Verwenden Sie Platzhalter, um Suchmuster zu erstellen, die bestimmte Daten vergleichen. Wenn Sie in diesem Beispiel alle Produkte finden möchten, deren Namen Anvil enthalten, können Sie ein Platzhalter-Suchmuster erstellen, um Produkte zu finden, bei denen Anvil an einer beliebigen Stelle im Produktnamen vorkommt.

Um Platzhalter in Suchklauseln zu verwenden, muss der Link-Operator verwendet werden. wie MySQL anweist, gefolgt von einem Suchmuster, das zum Vergleich Wildcard-Matching anstelle von direktem Gleichheitsmatching verwendet.


2. Prozentzeichen (%) Platzhalter

Das am häufigsten verwendete Platzhalterzeichen ist die Prozentzahl (%). In einer Suchzeichenfolge steht % für eine beliebige Anzahl von Vorkommen eines beliebigen Zeichens. Um beispielsweise alle Produkte zu finden, die mit dem Wort a beginnen, können Sie die folgende Select-Anweisung verwenden:

select prod_id, prod_name from products where prod_name like 'a%';

In diesem Beispiel wird verwendet Suchmuster „a%“. Suchen Sie beim Ausführen dieses Satzes nach einem beliebigen Wort, das mit a beginnt. % weist MySQL an, jedes Zeichen nach a zu akzeptieren, egal wie viele Zeichen es hat.

Hinweis: Je nachdem, wie MySQL konfiguriert ist, kann bei der Suche die Groß-/Kleinschreibung beachtet werden. Wenn die Groß-/Kleinschreibung beachtet wird, stimmt „a%“ nicht mit dem Wort „Apache“ überein.

Platzhalter können überall im Suchmuster verwendet werden, und es können mehrere Platzhalter verwendet werden. Im folgenden Beispiel werden zwei Platzhalter verwendet, die sich an beiden Enden des Musters befinden:

select prod_id, prod_name from products where prod_name like '%a%';

Code-Analyse: Suchmuster ' %a%'' bedeutet, dass alle Werte übereinstimmen, die den Text Amboss enthalten, unabhängig davon, welche Zeichen davor oder danach stehen.

Platzhalterzeichen können auch in der Mitte von Suchmustern erscheinen. Zum Beispiel das folgende Beispiel:

wählen Sie prod_name aus Produkten aus, bei denen prod_name wie „%a%“ aussieht;

Es ist wichtig zu beachten, dass % zusätzlich zu einem oder mehreren Zeichen auch mit 0 übereinstimmen kann Charakter. % steht für 0, 1 oder mehr Zeichen an einer bestimmten Position im Suchmuster.

Hinweis : 1. Leerzeichen können die Wildcard-Übereinstimmung beeinträchtigen. Wenn beispielsweise in „%a%“ ein oder mehrere Leerzeichen nach „a“ stehen, stimmt die Klausel „prod_name“ nicht mit ihnen überein, da nach „a“ zusätzliche Zeichen stehen. Eine einfache Möglichkeit, dieses Problem zu lösen, besteht darin, am Ende des Suchmusters ein % hinzuzufügen. Eine andere bessere Möglichkeit besteht darin, eine Funktion zum Entfernen der nachgestellten Leerzeichen zu verwenden.

2. Obwohl es den Anschein hat, dass der Platzhalter % mit allem übereinstimmen kann, gibt es eine Ausnahme, nämlich NULL. Auch wenn prod_name wie „%“ nicht mit Zeilen mit dem Wert NULL als Produktname übereinstimmt.


3. Unterstrich „_“-Platzhalter

Ein weiterer nützlicher Platzhalter ist der Unterstrich (_ ). Der Unterstrich hat denselben Zweck wie %, aber er passt auf ein einzelnes Zeichen statt auf mehrere Zeichen.

Zum Beispiel:

wählen Sie prod_id,prod_name aus Produkten aus, bei denen Produkte mit prod_name wie „_ton anvil“ aussehen;

Ausgabe:

Tutorial zur Verwendung von Platzhaltern zum Filtern in MySQL

Das Suchmuster in dieser where-Klausel gibt zwei Platzhalterzeichen gefolgt von Text vor. In den Ergebnissen werden nur Zeilen angezeigt, die dem Suchmuster entsprechen: Der Unterstrich in der ersten Zeile entspricht 1 und der Unterstrich in der zweiten Zeile entspricht 2.

Sie können versuchen, % zu verwenden, um die zurückgegebenen Ergebnisse abzugleichen und zu vergleichen.

Das obige ist der detaillierte Inhalt vonTutorial zur Verwendung von Platzhaltern zum Filtern in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn