Hallo Thomas,
Hast Du daran gedacht, in der Tabelle "transactions" den Datensätzen einen Wert für das Feld "kundennummer" zuzuweisen?
Feld Typ Attribute Null Standard
kundennummer int(5) Nein 0
So etwas habe ich mir gedacht.
(die schon existierende kundennummer in userdb ist 5 Zeichen (50000) lang und wird mit auto_increment hochgezählt)
Die wird intern schon größer werden dürfen :-)
Habe ich einfach nur das Feld falsch angelegt?
Nein. Feld und Felddatentyp sollten ok sein. Deine nächste Aufgabe ist es, jeder einzelnen Zeile den richtigen Wert in das Feld "kundennummer" zuzuweisen. Solange Deine 'username'-Werte eindeutig sind, geht das noch recht einfach. Wurde jedoch ein 'username' mehrfach vergeben, d.h. gibt es in Deiner "userdb" mehrere Einträge mit unterschiedlicher 'kundennummer' aber gleichem 'username', dann hast Du ein Problem.
Ob ein Benutzername mehr als einmal vorkommt (und welche das sind) sollte Dir folgende (ungetestete) Abfrage liefern.
SELECT
username,
COUNT(username) AS anzahl
FROM
userdb
GROUP BY username
ORDER BY anzahl DESC
HAVING anzahl > 1
Wenn kein 'username' in der Tabelle "userdb" doppelt vorkommt, dann kannst Du mit einer geschickt formulierten SQL-Anweisung die Einträge in Deiner Tabelle "transactions" vornehmen, falls Deine MySQL-Version mindestens 4.0.4 ist (siehe MySQL-Handbuch, UPDATE-Syntax, übrigens nur in der englischen Version, in der deutschen steht der Hinweis nicht drin).
Freundliche Grüsse,
Vinzenz