Heim > Datenbank > MySQL-Tutorial > Wie kann ich die CASE-Anweisung verwenden, um Werte basierend auf Bedingungen in MySQL zuzuweisen?

Wie kann ich die CASE-Anweisung verwenden, um Werte basierend auf Bedingungen in MySQL zuzuweisen?

DDD
Freigeben: 2024-11-03 23:57:30
Original
265 Leute haben es durchsucht

How Can I Use the CASE Statement to Assign Values Based on Conditions in MySQL?

MySQL CASE verstehen: Ein umfassender Leitfaden

Bei der Arbeit mit SQL-Datenbanken ist die Manipulation von Daten zur Gewinnung aussagekräftiger Erkenntnisse unerlässlich. Die CASE-Anweisung bietet ein leistungsstarkes Tool zur bedingten Ausführung von SQL-Anweisungen, mit dem Sie komplexe Datentransformationen und Auswertungen durchführen können.

Enthüllung der CASE-Syntax

Es folgt die SQL-CASE-Anweisung ein strukturiertes Format:

CASE
    WHEN condition1 THEN result1
    [WHEN condition2 THEN result2] ...
    [ELSE default_result]
END CASE
Nach dem Login kopieren

So können Sie CASE nutzen, um Ihr gewünschtes Ergebnis zu erzielen:

Beispiel: Rollenaufträge zuweisen

Angenommen, Sie ein Feld in der Tabelle „user_role“ haben, das Rollen wie „Manager“, „Teilzeit“ usw. enthält. Sie möchten ein neues Feld „role_order“ erstellen, das eine Nummer basierend auf der Rolle zuweist.

Lösung mit CASE:

CASE
    WHEN user_role = 'Manager' THEN 5
    WHEN user_role = 'Part Time' THEN 3
    ELSE -1 -- Handle unknown roles
END CASE
Nach dem Login kopieren

Diese CASE-Anweisung funktioniert wie eine Switch-Anweisung , Auswerten des user_role-Werts und Zuweisen der entsprechenden Role_order-Nummer basierend auf vordefinierten Bedingungen.

Die CASE-Implementierung verstehen

CASE unterscheidet sich von IF-Anweisungen dadurch, dass es als umfassende Bewertungsanweisung fungiert. Es beginnt mit der Auswertung der ersten WHEN-Bedingung und führt das entsprechende Ergebnis aus. Wenn die Bedingung nicht erfüllt ist, wird mit der nächsten WHEN-Bedingung fortgefahren, bis eine passende Bedingung gefunden wird. Wenn keine WHEN-Bedingung zutrifft, liefert die optionale ELSE-Klausel ein Standardergebnis.

Vereinfachte CASE-Syntax für die Auswertung einzelner Werte

Bei der Auswertung von a ist eine alternative Syntax für CASE verfügbar Einzelwert:

CASE value
    WHEN condition1 THEN result1
    [WHEN condition2 THEN result2] ...
    [ELSE default_result]
END CASE
Nach dem Login kopieren

Diese Syntax vereinfacht die Anweisung bei der Untersuchung eines bestimmten Werts, beispielsweise im Beispiel der Überprüfung des user_role-Werts.

Das obige ist der detaillierte Inhalt vonWie kann ich die CASE-Anweisung verwenden, um Werte basierend auf Bedingungen in MySQL zuzuweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage