s****a 发帖数: 6521 | 1 【 以下文字转载自 PhotoGear 讨论区 】
发信人: shorea (未注册用户), 信区: PhotoGear
标 题: 万佛,请教一个数据库问题
发信站: BBS 未名空间站 (Wed Feb 27 20:48:59 2013, 美东)
mysql
怎样用一个表更新另一个表,如果主键存在就略过,不存在就写入?
包子 |
c*********e 发帖数: 16335 | 2 union/union all?
【在 s****a 的大作中提到】 : 【 以下文字转载自 PhotoGear 讨论区 】 : 发信人: shorea (未注册用户), 信区: PhotoGear : 标 题: 万佛,请教一个数据库问题 : 发信站: BBS 未名空间站 (Wed Feb 27 20:48:59 2013, 美东) : mysql : 怎样用一个表更新另一个表,如果主键存在就略过,不存在就写入? : 包子
|
e****7 发帖数: 4387 | 3
如果没有merge, 直接insert with outer join
【在 s****a 的大作中提到】 : 【 以下文字转载自 PhotoGear 讨论区 】 : 发信人: shorea (未注册用户), 信区: PhotoGear : 标 题: 万佛,请教一个数据库问题 : 发信站: BBS 未名空间站 (Wed Feb 27 20:48:59 2013, 美东) : mysql : 怎样用一个表更新另一个表,如果主键存在就略过,不存在就写入? : 包子
|
e****7 发帖数: 4387 | 4 insert into tbl1
select tbl2.*
from tbl2 left outer join tbl1
on tbl2.pk = tbl1.pk
where tbl1.pk is null |
e****7 发帖数: 4387 | 5 噢,mysql 有一个replace into, 我不熟,但不会太复杂,放狗搜下儿吧 |
s****a 发帖数: 6521 | 6 replace into 我用过啊,问题是现在想要不replace |
e****7 发帖数: 4387 | 7
那就是 insert 啦,left outer join
【在 s****a 的大作中提到】 : replace into 我用过啊,问题是现在想要不replace
|
s****a 发帖数: 6521 | 8
甚好
受包
【在 e****7 的大作中提到】 : insert into tbl1 : select tbl2.* : from tbl2 left outer join tbl1 : on tbl2.pk = tbl1.pk : where tbl1.pk is null
|
e****7 发帖数: 4387 | 9
收到双黄包,谢谢!
【在 s****a 的大作中提到】 : : 甚好 : 受包
|