今天遇到一个客户的数据更新问题,两个相关联的表,一个主表用于保存单据主要信息,一个副表用于保存单据的明细信息;现在要把主表的其中一个字段的数据更新到副表的一个字段中保存。精通的SQL语法的,当然是很简单了。下面我作个详细的说明。
假设A表是主表,有单号order_id、开单人operator、开单日期oper_date、备注memo等;B表是副表,有单号order_id、序号id、商品编码code、商品名称name、备注memo等。A表的备注是有数据的,B表的备注没有数据,现在要把A表的数据更新到B表,并且B表有数据的不能更新了。A表与B表是以单号来关联的。更新数据的SQL语法如下:
update  B  set B.memo=A.memo  from  B,A
where A.order_id=B.order_id and (B.memo is null or B.memo='');

A、B表的order_id是索引,而且是关联字段,所以要放在Where条件作为第一条件。B表的备注为空值,或等于没有值的,才能更新。

--------------------------
示例查询:
SELECT TOP 10 A.F_DATE,B.F_DATE  FROM M..C1T06 A, M..C1T15 B WHERE 
A.F_CODE=B.F_CODE AND A.F_CQRQ =B.F_CQRQ AND B.F_DATE IS NULL 
示例更新:
UPDATE B SET B.F_DATE=A.F_DATE FROM C1T06 A, C1T15 B WHERE 
A.F_CODE=B.F_CODE AND A.F_CQRQ =B.F_CQRQ AND B.F_DATE IS NULL 

例:

UPDATE CSGK_VideoLog SET CSGK_VideoLog.Name = CSGK_Users.Name from CSGK_VideoLog,CSGK_Users  where CSGK_Users.UserId=CSGK_VideoLog.UId and (CSGK_VideoLog.WTime > '2017-09-04 12:00:00.000')

  

最新文章

  1. python——django入门篇
  2. CentOS系统启动流程你懂否
  3. div基础
  4. ScrollView与ListView的冲突
  5. UIlabel多行文字自动换行 (自动折行)
  6. [转]基于SQL脚本将数据库表及字段提取为C#中的类
  7. Logback日志使用详解
  8. 矩阵分解(rank decomposition)文章代码汇总
  9. 【BZOJ 3926】 [Zjoi2015]诸神眷顾的幻想乡 (广义SAM)
  10. PL/SQL Developer 远程连接Oracle数据库
  11. SpringMVC08转发和重定向
  12. JavaScript中forEach的用法相关
  13. Android底部导航栏——FrameLayout + RadioGroup
  14. LINQ中,Single()、SingleOrDefault()的解析、示例
  15. Vue实现移动端页面切换效果
  16. ubuntu如何安装或更换内核
  17. [Aaronyang] 写给自己的WPF4.5 笔记7[三巴掌-ItemsControl数据绑定详解与binding二次处理 3/3]
  18. R语言函数总结(转)
  19. odoo软件名称及授权协议的变化
  20. BZOJ 4571 【SCOI2016】 美味

热门文章

  1. JVM工作原理 - 内存空间
  2. DSU模板(树的启发式合并)
  3. SpringMVC DispatcherServlet-------视图渲染过程
  4. BZOJ 2746: [HEOI2012]旅行问题
  5. 【BZOJ1864】三色二叉树(动态规划)
  6. POJ.3321 Apple Tree ( DFS序 线段树 单点更新 区间求和)
  7. WEB入门二 表格和表单
  8. 关于strassen矩阵乘法的矩阵大小不是2^k的形式时,时间复杂度是否还是比朴素算法好的看法
  9. std::function 使用_
  10. django中的转义