Ich habe zwei TabellenParse in MySQL mit Komma als Trennzeichen
Table1 mit Liste der Benutzer durch Komma getrennt
Name UserID
abc A,B,C,D
def A,B,C
Table2
Name UserID
abc A
abc B
abc C
def A
def B
Ich brauche die Benutzer zu finden, die in Tabelle 1 sind für jeden Namen, aber nicht in Tabelle2 (Es wird niemals eine Instanz geben, wenn ein Paar "Benutzer-ID zu Name" in Tabelle 2 vorhanden ist, aber nicht in Tabelle1 als CSV).
sollte die Ausgabe
Name UserID
abc D
def C
sein, die ich mit PHP dies tun können, aber ist es eine Möglichkeit, dies durch eine Abfrage durchgeführt werden kann? Ich bin mir nicht sicher, wo ich anfangen soll, falls ich das als Anfrage mache. Kann ich MySQL mit Komma als Trennzeichen analysieren?
'Ich muss die Benutzer finden, die in Tabelle1 für ** jeder Name **, aber nicht in Tabelle2' sind. Aber 'D' in Tabelle1 ist nicht in ** jeder Name **. 'D' ist nur in' abc'. Wie kommt es dann in Ihre gewünschte Ausgabe? – hims056
Was ich meine, ist jeder Name UserID Paar .. – Ank
Sie haben denormalisierte Daten in Ihrer Datenbank. Ich würde Ihnen empfehlen, ein PHP-Skript auszuführen, um die Daten zu normalisieren und die Ergebnisse in der normalisierten Datenbank in Ihrer Datenbank zu speichern. Auf diese Weise wird diese bestimmte Abfrage und alle zukünftigen Abfragen viel einfacher. Im Allgemeinen ist es gut, durch Kommas getrennte Werte zu vermeiden, die in Datenbankfeldern gespeichert sind. Weitere Informationen zur Datenbanknormalisierung finden Sie hier: http://databases.about.com/od/specificproducts/a/normalization.htm –