文档章节

Update 两个表之间数据更新

simpower
 simpower
发布于 2015/05/20 18:57
字数 294
阅读 46
收藏 1

access

UPDATE house, table1 SET house.上月表底 = table1.表底
WHERE table1.年份=CStr('2015') and table1.月份=CStr('5') and house.户号=table1.户号;

 

一、当用一个表中的数据来更新另一个表中的数据,T-SQL提供多种写法(下面列出了二种),但建议用第一种写法,虽然传统,但结构清晰。

并且要注意,当用一个表中的数据来更新另一个表中的数据时,二个表一定要有关联!

1.


update t1   
        set t1.c2 = t2.c2  
      from t2  
where t1.c1 = t2.c1 

2.


Update t1   
        set t1.c2 = t2.c2  
from t1 inner join t2   
        on t1.c1 = t2.c1 

二、FROM 子句中指定的表的别名不能作为 SET column_name 子句中被修改字段的限定符使用。
    例如,下面的内容无效:


UPDATE titles  
SET t.ytd_sales = t.ytd_sales + s.qty  
FROM titles t, sales s  
WHERE t.title_id = s.title_id  
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales) 

若要使上例合法,请从列名中删除别名 t 或使用本身的表名。
1.


UPDATE titles  
SET ytd_sales = t.ytd_sales + s.qty  
FROM titles t, sales s  
WHERE t.title_id = s.title_id  
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales) 

2.


UPDATE titles  
SET titles.ytd_sales = t.ytd_sales + s.qty  
FROM titles t, sales s  
WHERE t.title_id = s.title_id  
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

本文转载自:http://www.cnblogs.com/moss_tan_jun/archive/2011/06/25/2089442.html

共有 人打赏支持
simpower
粉丝 24
博文 498
码字总数 22898
作品 0
海淀
程序员
学习SQL【5】-数据更新

学习.png 数据的更新处理大体可以分为插入(INSERT)、删除(DELETE)和更新(UPDATE)三类,此外,还会给大家介绍数据库中用来管理数据更新的重要概念—事务。 一:数据的插入(INSERT语句)...

爱吃西瓜的番茄酱
2017/12/06
0
0
《MySQL必知必会》读书笔记(三) 15~21章

1、外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系。通过外键查找: SELECT vendname, prodname, pridprice FROM vendors, products WHERE vendors.vendid = produ...

一万
2016/02/07
101
0
mysql存在则更新,不存在则插入

INSERT INTO ON DUPLICATE KEY UPDATE 与 REPLACE INTO,两个命令可以处理重复键值问题,在实际上它之间有什么区别呢? 前提条件是这个表必须有一个唯一索引或主键。 unique 1、REPLACE发现重...

LCZ777
2015/09/22
4.6K
0
MyCat_全局表及其死锁问题

全局表 全局表说明 全局表配置使用type='global' 全局表数据增加或者修改时,节点之间保持数据一致 全局表只适合修改不频繁的表,例如字典表 全局表死锁 为了保持数据的一致性,当全局表更新...

sand_ant
2016/06/22
613
0
mysql foreign key(外键) 说明与实例

mysql foreign key(外键) 说明与实例 一,什么是foreign key,及其完整性 个人觉得,foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,我们能够让表与表之间的数据,更加的完...

henosteven
2012/08/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JS:异步 - 面试惨案

为什么会写这篇文章,很明显不符合我的性格的东西,原因是前段时间参与了一个面试,对于很多程序员来说,面试时候多么的鸦雀无声,事后心里就有多么的千军万马。去掉最开始毕业干了一年的Jav...

xmqywx
今天
0
0
Win10 64位系统,PHP 扩展 curl插件

执行:1. 拷贝php安装目录下,libeay32.dll、ssleay32.dll 、 libssh2.dll 到 C:\windows\system32 目录。2. 拷贝php/ext目录下, php_curl.dll 到 C:\windows\system32 目录; 3. p...

放飞E梦想O
今天
0
0
谈谈神秘的ES6——(五)解构赋值【对象篇】

上一节课我们了解了有关数组的解构赋值相关内容,这节课,我们接着,来讲讲对象的解构赋值。 解构不仅可以用于数组,还可以用于对象。 let { foo, bar } = { foo: "aaa", bar: "bbb" };fo...

JandenMa
今天
1
0
OSChina 周一乱弹 —— 有人要给本汪介绍妹子啦

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享水木年华的单曲《中学时代》@小小编辑 手机党少年们想听歌,请使劲儿戳(这里) @须臾时光:夏天还在做最后的挣扎,但是晚上...

小小编辑
今天
18
4
centos7安装redis及开机启动

配置编译环境: sudo yum install gcc-c++ 下载源码: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 解压源码: tar -zxvf redis-3.2.8.tar.gz 进入到解压目录: cd redis-3......

hotsmile
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部