Heim > Datenbank > MySQL-Tutorial > Wie kann ich eine einzelne Spalte mit mehreren Werten in separate Spalten in SQL aufteilen?

Wie kann ich eine einzelne Spalte mit mehreren Werten in separate Spalten in SQL aufteilen?

Linda Hamilton
Freigeben: 2025-01-13 07:18:45
Original
270 Leute haben es durchsucht

How Can I Split a Single Column of Multiple Values into Separate Columns in SQL?

Umwandeln einer einzelnen Spalte mit mehreren Werten in separate Spalten in SQL

Bei der Arbeit mit SQL-Daten ist häufig eine Umstrukturierung der Spalten erforderlich. Eine häufige Aufgabe besteht darin, eine einzelne Spalte mit mehreren Werten in verschiedene Spalten aufzuteilen. Hier ist eine Methode, um dies zu erreichen:

Die folgende SQL-Abfrage verwendet CASE-Anweisungen und Zeichenfolgenfunktionen, um eine Spalte mit dem Namen „name“ zu analysieren, die Vor- und Nachnamen enthält:

<code class="language-sql">SELECT
  CASE
    WHEN name LIKE '% %' THEN SUBSTRING(name, 1, CHARINDEX(' ', name) - 1)
    ELSE name
  END AS first_name,
  CASE
    WHEN name LIKE '% %' THEN SUBSTRING(name, CHARINDEX(' ', name) + 1, LEN(name))
    ELSE NULL
  END AS last_name
FROM
  YourTable;</code>
Nach dem Login kopieren

Dieser Ansatz prüft mithilfe von name, ob die Spalte LIKE '% %' ein Leerzeichen enthält. Wenn ein Leerzeichen vorhanden ist, extrahieren die Funktionen SUBSTRING und CHARINDEX den Text vor und nach dem Leerzeichen in first_name bzw. last_name. Wenn kein Leerzeichen gefunden wird, wird das gesamte name first_name zugewiesen und last_name auf NULL gesetzt.

Diese Lösung bietet einen praktischen Ansatz für viele gängige Szenarien, obwohl komplexere Situationen möglicherweise ausgefeiltere String-Manipulationstechniken erfordern.

Das obige ist der detaillierte Inhalt vonWie kann ich eine einzelne Spalte mit mehreren Werten in separate Spalten in SQL aufteilen?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage