关于SQL插入(100分)

  • 主题发起人 主题发起人 Arcter
  • 开始时间 开始时间
A

Arcter

Unregistered / Unconfirmed
GUEST, unregistred user!
请问,从一张表选出一些数据后,再将它们插入另一张表前,
先判断是否已存在,如何做,请教详细步骤。
 
用SQL搞定。
 
INSERT INTO table1 (columns_list...)
VALUES (update_atoms...)
WHERE NOT EXISTS
(
SELECT columns...
FROM Table2
WHERE (condition...)
)
 
看你插入的数据量大不大,
如果比较多的话应该象Victortim说的那样做,
如果数据少的话可以用try语句,如果记录已经存在的话则不会插入,这样做可以
避免自己写select语句,把任务交给dbms完成,
当然这样效率会比较低
 
INSERT INTO table1
select * from Table2
where Primarykey not in(Select Primarykey from Table1)
 
Insert命令只能将记录插在表尾,若要插在表头,可考虑用union(并)操作.sql的并操作可自动去除重复记录,但这样如果一定要插到原来的表的话,可能需要分两步走.
 
"先判断是否已存在"
判断目标表里已有要插入的值
还是判断源表里有想要的值?
 
多人接受答案了。
 
后退
顶部