Abfragetabelle mit mehreren durch Kommas getrennten Werten in einer Spalte
In diesem Szenario haben Sie eine Tabelle mit einer Spalte, die durch Kommas getrennte Werte enthält. getrennte Werte, und Sie stehen vor der Herausforderung, diese Spalte nach bestimmten Werten abzufragen. Das Dilemma entsteht, wenn mehrere Werte in derselben Zelle gespeichert sind, was es schwierig macht, einen bestimmten Wert mit einfachen SQL-Filtern präzise zu lokalisieren.
Um dieses Problem zu lösen, besteht ein praktikabler Ansatz darin, Ihr Datenbankschema durch Erstellen zu normalisieren eine separate Tabelle für Kindernamen. Dies würde es Ihnen ermöglichen, Tabellen basierend auf untergeordneten IDs oder Namen zu verknüpfen und so ein präzises Filtern und Abrufen von Daten zu ermöglichen.
Wenn eine Umstrukturierung des Schemas nicht möglich ist, können Sie alternativ die Funktion FIND_IN_SET in Ihrer SQL-Abfrage verwenden. Mit dieser Funktion können Sie nach einem bestimmten Wert in einer durch Kommas getrennten Liste suchen, die in einer Spalte gespeichert ist. Durch die Implementierung dieser Funktion können Sie Ihre Abfrage verfeinern, um Zeilen zu identifizieren, in denen der gewünschte Wert in der Kinderspalte vorhanden ist.
In Ihrem Beispiel können Sie beispielsweise die folgende Abfrage ausführen, um Eltern zu finden, die ein Kind mit dem Namen haben „Alex“:
SELECT * FROM table_name WHERE FIND_IN_SET('Alex', children);
Mit diesem Ansatz können Sie Daten basierend auf bestimmten Werten, die in durch Kommas getrennten Spalten gespeichert sind, effizient finden und abrufen, selbst wenn sich mehrere Namen in derselben befinden Zelle.
Das obige ist der detaillierte Inhalt vonWie frage ich eine Tabelle mit durch Kommas getrennten Werten in einer Spalte ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!