0

私は2つのテーブルを持っています:

`user1`
- full_name
- headline # this is empty

`user2`
- full_name
- headline # this has content

headlinefromuser2テーブルをテーブルに挿入したいuser1。これは私がこれまでに持っているものです:

insert into user1 set headline = (select headline from user2 where headline=headline)

ただし、これから、selectが複数の行を返すというエラーメッセージが表示されます。この挿入ステートメントを正しく発行するにはどうすればよいですか?

4

2 に答える 2

1

あなたが何をしたいのかは完全には明確ではありません。特に、各テーブルに複数のレコードがある場合はどうなりますか?見出しを一致user2するuser1場所にコピーする場合は、複数テーブルの構文を使用してテーブルを結合し、次を更新できます。full_nameUPDATEuser1

UPDATE user1 JOIN user2 USING (full_name) SET user1.headline = user2.headline
于 2012-07-22T11:16:44.900 に答える
0

本当に INSERT が必要な場合は、

INSERT INTO user1 SELECT full_name, headline

実際に更新しようとしている場合は、

UPDATE user1 SET headline = (SELECT headline FROM user2 WHERE user1.full_name = user2.full_name)
于 2012-07-22T11:21:15.867 に答える