作者:是远航呀 | 来源:互联网 | 2018-07-11 13:55
SQL中使用updateinnerjoin和deleteinnerjoinUpdateUpdateXXXsetXXXwhere这种写法大家肯定都知道,才发现update和delete居然支持innerjoin的update方式,这个在表间关联来做更新和删除操作非常有用.列子:Sql代码updatetb_Usertb_Userusrinne
SQL中使用update inner join和delete inner join Update Update XXX set XXX where 这种写法大家肯定都知道,才发现update和delete居然支持inner join的update方式,这个在表间关联来做更新和删除操作非常有用.列子:Sql代码 update tb_User tb_User usr inne
SQL中使用update inner join和delete inner join
Update
Update XXX set XXX where 这种写法大家肯定都知道,才发现update和delete居然支持inner join的update方式,这个在表间关联来做更新和删除操作非常有用.
列子:
Sql代码
update tb_User
tb_User usr
inner join tb_Address addr on usr.nAddressFK = addr.nAddressID
tb_User tb_User usr
update的格式是
update t1 set t1.name=’Liu’ from t1 inner join t2 on t1.id = t2.tid
MYSQL,ACCESS 写法如下:
Sql代码
UPDATE mem_world AS mw1 INNER JOIN mem_world AS mw2
ON mw1.parentid = mw2.wid
mw2.baseid mw2.parentid mw2.size > 1;
mw2.mw2.parentid mw2.size > 1;
on是表连接的筛选条件
就是说,表连接后,会产生一个类似于临时的视图这么一个东西
where是从这个临时的视图中筛选数据的
所以,虚拟主机,服务器空间,你首先要搞清,网站空间,你的所谓的2个条件属于哪一种
Delete
delete 语句也是类似
t2 on t1.id = t2.tid
注意蓝色部分。
mysql:
Sql代码
DELETE mwb FROM mem_world_building AS mwb INNER JOIN mem_world AS mw
ON mwb.wid = mw.wid
baseid mw.parentid mw.size > 1;
baseid mw.parentid mw.size > 1;
下面是ORACLE的:
Sql代码
DELETE TABLE1 where KHID exists ( select KHID from table2 where FWDWID=8)
Sql代码
table2
posted on