- 1 1. Überblick über MySQL LIKE
- 2 2. Grundlegende Syntax von MySQL LIKE
- 3 3. Wildcards, die mit LIKE verwendet werden
- 4 4. Techniken für die Mustervergleichung
- 5 5. Escapen spezieller Zeichen in LIKE
- 6 6. Erweiterte Verwendung von LIKE
- 7 7. Best Practices bei der Verwendung von LIKE
- 8 8. Häufige Anwendungsfälle von MySQL LIKE
- 9 9. Zusammenfassung
- 10 10. Häufig gestellte Fragen
1. Überblick über MySQL LIKE
Der LIKE-Operator von MySQL wird verwendet, um nach Daten zu suchen, die einem bestimmten Muster in einer Datenbank entsprechen. LIKE wird in der SQL-WHERE-Klausel verwendet und ermöglicht es Ihnen, Suchbedingungen basierend auf einem Teil oder dem gesamten String zu definieren. Zum Beispiel ist es nützlich, wenn Sie nach „Namen suchen, die mit einem bestimmten Buchstaben beginnen“ oder „Produktcodes, die spezifische Zeichen enthalten“.
Häufige Anwendungsfälle für den LIKE-Operator
- Partielle Übereinstimmungssuchen
- Suche nach spezifischen Mustern
- Filtern von Daten
Da dieser Operator speziell für die Mustervergleichung ist, ist er essenziell für die effiziente Suche und Arbeit mit Daten in einer Datenbank.
2. Grundlegende Syntax von MySQL LIKE
Die grundlegende Syntax für die Verwendung des LIKE-Operators in MySQL lautet wie folgt:
SELECT column_name FROM table_name WHERE column_name LIKE 'pattern';
Beispiele für die Verwendung von LIKE
- Suche nach Daten, die mit einem bestimmten Zeichen beginnen
SELECT * FROM users WHERE name LIKE 'A%'; - Suche nach Daten, die einen bestimmten String enthalten
SELECT * FROM products WHERE product_code LIKE '%123%';
Der LIKE-Operator wird zusammen mit Wildcards wie % und _ verwendet. Dies ermöglicht flexiblere Suchen.
3. Wildcards, die mit LIKE verwendet werden
Mit dem LIKE-Operator verwenden Sie Wildcards, um Suchmuster zu definieren. MySQL unterstützt hauptsächlich die folgenden zwei Wildcards.
%-Wildcard
- Passt auf jeden String (null oder mehr Zeichen)
SELECT * FROM users WHERE email LIKE '%@example.com';In diesem Beispiel sucht es nach allen E-Mail-Adressen, die mit@example.comenden.
_-Wildcard
- Passt auf ein beliebiges einzelnes Zeichen
SELECT * FROM products WHERE product_code LIKE '_A%';In diesem Beispiel sucht es nach allen Produktcodes, bei denen das zweite ZeichenAist.
Durch die korrekte Verwendung von Wildcards können Sie Daten in Ihrer Datenbank effizient filtern.
4. Techniken für die Mustervergleichung
Durch die Kombination des LIKE-Operators mit Wildcards können Sie verschiedene Suchen für die Mustervergleichung durchführen.
Beginnt mit
- Suche nach Daten, bei denen der String mit einem bestimmten Muster beginnt
SELECT * FROM customers WHERE name LIKE 'John%';Dies sucht nach allen Kundennamen, die mitJohnbeginnen.
Endet mit
- Suche nach Daten, bei denen der String mit einem bestimmten Muster endet
SELECT * FROM files WHERE filename LIKE '%.pdf';Dies sucht nach allen Dateinamen, die mit.pdfenden.
Enthält
- Suche nach Daten, bei denen der String ein bestimmtes Muster enthält
SELECT * FROM documents WHERE content LIKE '%MySQL%';Dies sucht nach allen Dokumenten, die den StringMySQLenthalten.
5. Escapen spezieller Zeichen in LIKE
Im LIKE-Operator haben % und _ spezielle Bedeutungen als Wildcards. Wenn Sie sie als normale Zeichen suchen möchten, müssen Sie ein Escape-Zeichen verwenden.
So escapen Sie
- Beispiel für eine Suche mit einem Escape-Zeichen
SELECT * FROM filenames WHERE filename LIKE 'file\_%' ESCAPE '\';In dieser Abfrage sucht es nach allen Dateinamen, die mitfile_beginnen. Das_wird normalerweise als Wildcard behandelt, aber durch die Verwendung des Escape-Zeichens\wird es als normales Zeichen behandelt.
6. Erweiterte Verwendung von LIKE
Der LIKE-Operator kann mit anderen SQL-Anweisungen kombiniert werden, um fortgeschrittenere Suchen durchzuführen.
Kombination mit JOIN
- Suche nach verwandten Daten über Tabellen hinweg
SELECT orders.id, customers.name FROM orders JOIN customers ON orders.customer_id = customers.id WHERE customers.name LIKE '%Smith%';Diese Abfrage ruft Bestellungen für Kunden ab, deren NamenSmithenthalten.
Negation mit NOT LIKE
- Suche nach Daten, die einem bestimmten Muster nicht entsprechen
SELECT * FROM emails WHERE address NOT LIKE '%@spam.com';Dies ruft E-Mail-Adressen ab, die nicht mit@spam.comenden.

7. Best Practices bei der Verwendung von LIKE
Es gibt einige wichtige Überlegungen und Best Practices bei der Verwendung des LIKE-Operators.
Auswirkungen auf die Leistung
- Beim Einsatz des
LIKE‑Operators kann die Leistung bei der Suche in großen Datensätzen abnehmen. Insbesondere wenn Sie%am Anfang des Musters setzen, können Indizes nicht effektiv genutzt werden, was die Abfragen verlangsamen kann.
Verwendung geeigneter Indizes
- Um die Leistung zu verbessern, sollten Sie bei Bedarf Indizes erstellen.
8. Häufige Anwendungsfälle von MySQL LIKE
Der LIKE‑Operator von MySQL wird in vielen verschiedenen Szenarien verwendet, zum Beispiel in den folgenden.
Kundensuche
- Bei der Suche nach Kundennamen oder E‑Mail‑Adressen.
Produktschlüssel‑Suche
- Bei der Suche nach Produkten anhand eines Teils des Produktcodes.
9. Zusammenfassung
Der LIKE‑Operator ist ein leistungsstarkes Mustererkennungswerkzeug in MySQL. In diesem Artikel haben wir alles von der Grundsyntax bis zu fortgeschrittener Nutzung und Leistungsoptimierung behandelt. Verwenden Sie den LIKE‑Operator korrekt, um effizient in Ihrer Datenbank zu suchen und zu arbeiten.
10. Häufig gestellte Fragen
F1: Was ist der Unterschied zwischen LIKE und =?
A1: = wird für exakte Übereinstimmungen verwendet, während LIKE für Teilübereinstimmungen und Mustererkennung eingesetzt wird.
F2: Ist LIKE case‑sensitive?
A2: In den Standard‑Einstellungen von MySQL ist LIKE nicht case‑sensitive. Sie können es jedoch case‑sensitive machen, indem Sie das Schlüsselwort BINARY verwenden.
F3: Kann der LIKE‑Operator mit Zahlen verwendet werden?
A3: Er wird grundsätzlich für Zeichenketten verwendet, kann aber eingesetzt werden, wenn Zahlen als Zeichenketten gespeichert sind.

