0

列(id、id_user)を持つtable1と列(id、username)を持つtable2があります。ユーザーはtable2に登録されています。だから私が欲しいのは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)

DBトリガーを使用する場合は、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 に答える