我试图插入到表A,从表B唯一的数据表C相匹配的数据,但我不断收到违反主键的错误和不知道的我在做什么错 表A - bookfeed 表B - bookF 表C - bookStatsSQL服务器插入数据参见表2,其中表1 =表3数据
INSERT INTO bookFeed
(entryId,feed,entryContent,pubDate,authorName,authorId,age,
sex,locale,pic,fanPage, faceTitle,feedtype,searchterm,clientId,dateadded)
SELECT DISTINCT b.entryId,b.feed,b.entryContent,b.pubDate,b.authorName,
b.authorId,b.age,b.sex,b.locale,b.pic,b.fanPage,b.faceTitle,b.feedtype,
b.searchterm, b.clientId,b.dateadded
FROM bookF as b
INNER JOIN bookStats as a on a.feed = b.feed
WHERE NOT EXISTS (SELECT *
FROM bookFeed as c
WHERE c.entryId = b.entryId)
表A bookFeed对ENTRYID
主键
对不起,这应该是显而易见的。我认为这是它,但只是想要它跳过任何重复并插入所有其他数据。这就是为什么我尝试使用不同的,但我想有相同的entryIds,但与其他领域不同。感谢 – vbNewbie 2011-01-13 21:46:38
这个答案似乎并不地址表保存ID,这是一个问题,似乎有什么要问之间导入/转让的问题。你的观点是关于身份专栏和新的数据在旧的践踏,这两者似乎都不是问题。 – RichardTheKiwi 2011-01-13 21:49:37