0

我有带有列(id、id_user)的 table1 和带有列(id、用户名)的 table2。用户在表 2 中注册。所以我想要的是将table2.id新注册用户的table1.id_user.

我有这个查询:

INSERT INTO table1 (id_user) SELECT id FROM table2;

但结果是:

例如我有table1.id

 id
 1
 2
 3

当新用户在 table2 中注册时,table1.id看起来像这样:

id
1
2
3
1
2
3
4

每次有新注册用户时,它都会重复所有数据。如何解决此问题以仅添加新注册的用户?

4

2 回答 2

1
INSERT INTO table1  (id_user) 
    SELECT id FROM table2 where id not in (select id_user from table1)

如果您使用数据库触发器,那么您可以自动将 table2 中的新用户 ID 插入到 table1 中。

于 2012-04-14T17:07:50.550 回答
1

使用max关键字。它在你的情况下工作。

 " INSERT INTO table1  (id_user) SELECT max id FROM table2"
于 2012-04-14T17:11:11.407 回答