`
kanexiao
  • 浏览: 44995 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

通过两张表的一个字段对应,update其中一张表的某个字段

 
阅读更多
update PolityFace  set fdJoinDay =
(SELECT b.fdJoinDay FROM personbaseinfo b WHERE PolityFace.fsPersonID = b.fsPersonID) where  exists
(SELECT 1 FROM personbaseinfo d WHERE PolityFace.fsPersonID = d.fsPersonID)

update PolityFace  set fdJoinDay =
(SELECT b.fdJoinDay FROM personbaseinfo b,PolityFace c WHERE c.fsPersonID = b.fsPersonID) where  exists
(SELECT 1 FROM personbaseinfo d WHERE PolityFace.fsPersonID = d.fsPersonID)

两个sql的目的是一致的,但是逻辑不同。
第一个sql中的SELECT b.fdJoinDay FROM personbaseinfo b WHERE PolityFace.fsPersonID = b.fsPersonID的PolityFace.fsPersonID 是从一开始的PolityFace 中取的值,而第二个sql中的
c.fsPersonID是从两个表交叉集合取出的值,故会报错。
分享到:
评论

相关推荐

    MYSQL常用命令大全

     通过以上操作,就可以创建了一个数据库auction以及其中的一个表auction。  6.修改数据库  (1)在mysql的表中增加字段:  alter table dbname add column userid int(11) not null primary key auto_...

    MySQL中联表更新与删除的语法介绍

    相信大家在日常使用mysql,可能会遇到需要同时更新两张表时,我会采用在同一个事务中使用2句sql语句分别进行更新。其实,这种需要发送2句sql语句的方法效率相对来说是比较低的,有没有只用1句sql语句就可以完成这个...

    MySQL命令大全

    MySql的用户管理是通过User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。其中GRANT的常用用法如下: grant all on mydb...

    orcale常用命令

     dictionary 全部数据字典表的名称和解释,它有一个同义词dict dict_column 全部数据字典表里字段名称和解释 如果我们想查询跟索引有关的数据字典时,可以用下面这条SQL语句: SQL>select * from dictionary ...

    在Oracle数据库中同时更新两张表的简单方法

    今天遇到一个数据订正的问题,项目背景如下,有个表A,有两个字段a1,a2还有一个关联表B,其中也有两个字段,b1和b2。其中a2和b2是关联的,想把A中的字段a1更新成B中的b1 理论上sql应该挺好写的,但是在oralce中实现...

    数据库设计反范式.pdf

    ⼀对多:复制关键字以减少连接 复制⼀对多关系中的外键,使需要通过第三张表连接的两张表直接关连在⼀起 在⼀对多的关系中,将另 ⼀实体表的主键复制到多的实体表当外键,减少join表的数量 例⼦:每个部门租了⼀些...

    oracle数据库经典题目

    19.视图是一个表示表的数据的数据库对象,它允许用户从一个表或一组表中通过一定的查询语句建立一个“虚表”。 20.序列是一种可被多个用户使用的用于产生一系列唯一数字的数据库对象。尤其适合多用户环境中,可以...

    数据库操作语句大全(sql)

    10、说明:两张关联表,删除主表中已经在副表中没有的信息 delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 11、说明:四表联查问题: select * from a left ...

    Hibernate注释大全收藏

    整个层次结构中的所有父类和子类属性都映射到同一个表中,他们的实例通过一个辨别符列(discriminator)来区分。 Plane 是父类。@DiscriminatorColumn 注解定义了辨别符列。对于继承层次结构中的每个类, @...

    FMDB框架的MOME

    //创建一个名为User的表,有两个字段分别为string类型的Name,integer类型的 Age [db executeUpdate:@"CREATE TABLE User (Name text, Age integer)"]; 这样我们就有了一张表了。接下我们对表进行操作。插入数据...

    Mindsware动态数据对象平台v0.2版发布

    4、使用一个用户自定义的类完成对一张数据库表的schema定义,继承一个DBObject或者 MultiDBObject类(这个名字学习自一个开源项目expresso,功能也类似),只要 定义好schema,也就是手动设定一下每个column的名称、...

    2009达内SQL学习笔记

    当两个表有相同字段时必须加前缀,列名前需加表名和“.”,如“s_emp.id”。 1、用法:SELECT columns,prod2,prod3<列> FROM Table1,table2<表名> 分号结束 如: select id from s_emp; select last_name,name ...

    sql经典语句一部分

    10、说明:两张关联表,删除主表中已经在副表中没有的信息 delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 11、说明:四表联查问题: select * from a left ...

    经典全面的SQL语句大全

     10、说明:两张关联表,删除主表中已经在副表中没有的信息 delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )  11、说明:四表联查问题: select * from a left ...

    经典SQL语句大全

    10、说明:两张关联表,删除主表中已经在副表中没有的信息 delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 11、说明:四表联查问题: select * from a left ...

    超实用sql语句

    10、说明:两张关联表,删除主表中已经在副表中没有的信息 delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 ) 11、说明:四表联查问题: select * from a left ...

    mysql数据库的基本操作语法

    外键约束是保证一个或两个表之间的参照完整性,外键是构建于一个表的两个字段或是两个表的两个字段之间的参照关系。 也就是说从表的外键值必须在主表中能找到或者为空。 当主表的记录被从表参照时,主表的记录将不...

    阿里巴巴大数据之路——数据技术篇.pdf

    只返回两个表中联结字段相等的⾏, left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录, right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录, 假设我们有两张表。...

    快速理解MySQL中主键与外键的实例教程

    主键与外键的关系,通俗点儿讲,我现在有一个论坛,有两张表,一张是主贴 thread,一张是回帖 reply 先说说主键,主键是表里面唯一识别记录的字段,一般是帖子id,体现在访问的时候,例如是 thread.php?id=1 表示我...

    sql总结.doc

    注:聚簇索引:一张表只能建立一个聚簇索引,以主键建立索引。聚簇索引包括主键索引和二级索引(二级索引是在对非主键字段建立索引后,通过索引找到对应这个非主键字段的主键,再进行主键索引,找到B+树中叶子结点)...

Global site tag (gtag.js) - Google Analytics