MySQL insert into Tabelle mit auto-increment bei der Auswahl aus einer anderen Tabelle

Ich habe eine Tabelle mit einem auto-increment Primärschlüssel:

create table rt_table
(
  rtID int PRIMARY KEY AUTO_INCREMENT, 
  rt_user_id BIGINT,               /*user being retweeted*/
  rt_user_name varchar(70),        /*user name of rt_user_id*/
  source_user_id BIGINT,           /*user tweeting rt_user_id*/
  source_user_name varchar(70),    /*user name of source_user_id*/
  tweet_id BIGINT,                 /*fk to table tweets*/

  FOREIGN KEY (tweet_id) references tweets(tweet_id)
);

Möchte ich füllen Sie diese Tabelle aus teilen der anderen Tabelle:

insert into rt_table 
select rt_user_id, (select user_name from users u where u.user_id = t.rt_user_id),
       source_user_id, (select user_name from users u where u.user_id = t.source_user_id),
       tweet_id
  from tweets t
 where rt_user_id != -1;

Bekomme ich eine Fehlermeldung, die besagt die Anzahl der Spalten nicht übereinstimmen, was ist denn der primary key (was ist ein auto-increment Wert und muss daher nicht eingestellt werden). Wie bekomme ich dieses?

InformationsquelleAutor der Frage CodeKingPlusPlus | 2013-07-21

Schreibe einen Kommentar