2012-04-14 11 views
0

Ich habe Tabelle1 mit Spalten (ID, ID_Benutzer) und Tabelle2 mit Spalten (ID, Benutzername). Die Benutzer sind in Tabelle2 registriert. Also was ich will, ist die table2.id der neuen registrierten Benutzer in table1.id_user einfügen.Das Einfügen von Daten von einer Tabelle in eine andere führt zu Duplikaten

Ich habe diese Anfrage:

INSERT INTO table1 (id_user) SELECT id FROM table2; 

aber das Ergebnis ist:

zum Beispiel habe ich in table1.id:

id 
1 
2 
3 

und wenn die neuen Benutzer in table2 registrieren die table1.id Looks so:

id 
1 
2 
3 
1 
2 
3 
4 

und es wiederholt alle Daten jedes Mal, wenn ein neuer registrierter Benutzer vorhanden ist. Wie kann ich das beheben, um nur den neu registrierten Benutzer hinzuzufügen?

+0

Sie könnten auch eine Primärschlüssel/Eindeutige Einschränkung für die ID festlegen, sodass Versuche, denselben Wert einzufügen, zu einer doppelten Schlüsseleinschränkung führen würden. also scheitern. – xQbert

Antwort

1

Wenn Sie einen DB-Trigger verwenden, können Sie die neue Benutzer-ID automatisch aus table2 in table1 einfügen.

+0

thx funktioniert genau so, wie ich will –

1

Verwenden Sie max Schlüsselwort.it Arbeit in Ihrem Fall.

+0

das funktioniert auch gut :) –

+0

Nur wenn es nur einen neuen Benutzer gibt. – MatBailie

Verwandte Themen