Direkt zum Inhalt
Urkunden
JSON-FunktionenTabellen & Schema ManagementMathe-FunktionenDatenbankenString-FunktionenAuslöserIndizesDatum FunktionenBasic Syntax

PostgreSQL LOWER

Die Funktion `LOWER` in PostgreSQL ist eine String-Funktion, die alle Zeichen in einem angegebenen String in Kleinbuchstaben umwandelt. Sie ist nützlich für den Vergleich von Zeichenketten ohne Berücksichtigung der Groß- und Kleinschreibung und für die einheitliche Formatierung von Text.

Verwendung

Die Funktion `LOWER` wird in der Regel verwendet, wenn du sicherstellen musst, dass Textdaten aus Gründen der Konsistenz in Kleinbuchstaben geschrieben werden, insbesondere bei Suchanfragen oder Daten-Normalisierungsprozessen. Sie nimmt eine Zeichenkette als Eingabe und gibt die Version in Kleinbuchstaben zurück.

sql
LOWER(string)

In dieser Syntax steht `string` für den Text, der in Kleinbuchstaben umgewandelt werden soll.

Beispiele

1. Grundlegende Umstellung

sql
SELECT LOWER('HELLO WORLD');

In diesem Beispiel wird die Zeichenkette `'HELLO WORLD'` in `'hello world'` umgewandelt.

2. Kleinschreibung von Spaltendaten

sql
SELECT LOWER(product_name)
FROM products;

Hier wandelt die Funktion `LOWER` alle Werte in der Spalte `Produktname` der Tabelle `Produkte` in Kleinbuchstaben um, was für eine einheitliche Datenformatierung nützlich sein kann.

3. Groß- und Kleinschreibung beachtende Suche

sql
SELECT *
FROM users
WHERE LOWER(email) = LOWER('Example@Domain.COM');

Diese Abfrage führt eine Suche ohne Berücksichtigung der Groß- und Kleinschreibung durch, indem sie sowohl die Spaltendaten als auch den Suchbegriff in Kleinbuchstaben umwandelt und so unabhängig von der Groß- und Kleinschreibung genaue Treffer gewährleistet.

Tipps und bewährte Praktiken

  • Normalisiere die Daten am Einstiegspunkt. Verwende `LOWER`, um die Daten beim Einfügen zu standardisieren und mögliche Inkonsistenzen zu reduzieren.
  • Kombiniere mit Indizes. Für die Suche ohne Berücksichtigung der Groß- und Kleinschreibung kannst du funktionale Indizes auf "NIEDRIG(Spaltenname)" verwenden, um die Abfrageleistung zu verbessern. Hier ist ein Beispiel für die Erstellung eines solchen Indexes:
    sql
        CREATE INDEX idx_lower_email ON users (LOWER(email));
        
  • Vermeide übermäßigen Gebrauch. Obwohl `LOWER` für die Konsistenz hilfreich ist, kann eine übermäßige Verwendung in SELECT-Anweisungen die Leistung beeinträchtigen; verwende es mit Bedacht, besonders bei großen Datensätzen.
  • Berücksichtige Zeichenkodierungen und Sonderzeichen. Beachte, dass `LOWER` die Zeichenkodierungseinstellungen der Datenbank respektiert, was für mehrsprachige Datensätze und Sonderzeichen wichtig ist.
  • Berücksichtige die Sortiereinstellungen. Stelle sicher, dass die Sortiereinstellungen deiner Datenbank mit den Anforderungen deines Gebietsschemas an die Groß- und Kleinschreibung übereinstimmen, um optimale Ergebnisse zu erzielen.