Sql从一张表中更改另一张表数据

语法:

update table1 set table1.列=table2.列 from table2 where table2.列=table1.列
update NFYSP.dbo.PATIENT     set
PATIENT_ADDUSERID=OLD.PATIENT_ADDUSERID
,PATIENT_UPDATEUSERID=OLD.PATIENT_UPDATEUSERID
,PATIENT_UPDATEUSERNAME=OLD.PATIENT_UPDATEUSERNAME
,PATIENT_ADDUSERNAME=OLD.PATIENT_ADDUSERNAME 
from CRM_XJP.dbo.PATIENT OLD where PATIENT.id=OLD.id

在更改时使用Join

UPDATE    ASET    foo = B.barFROM
    TableA A
JOIN    TableB B
ON A.col1 = B.colx
WHERE ...

参考:http://stackoverflow.com/questions/982919/sql-update-query-using-joins

来自为知笔记(Wiz)

Sql从一张表中更改另一张表数据

时间: 2024-12-17 20:39:35

Sql从一张表中更改另一张表数据的相关文章

mysql 从相同类型的多张表中提取到一张表中

蜗牛背着沉重的壳,贴着地面一步步艰难地向前爬行,不回头,也不左顾右盼,只是朝着自己想到达的地方行进. 有时候需要从多张相同类型的表中提取数据,这些表有一些相同的列或者表结构完全相同,同时表名存在一定的规律,如果表数量少还好,如果表数量多的话则会比较繁琐.可以通过存储过程将多张表的数据提取到一张表的方法来降低工作量. 先创建测试表并生成测试数据.以下存储过程创建10张测试表,每张表生成10条测试数据.drop PROCEDURE if EXISTS create10tables;create PR

表结构更改后或新增加数据后同步到表中

select 'insert into mtx_system_module(module_id,module_code,module_name,module_note,create_date,version)values('+cast(moduleid as varchar(10))+','''+ObjectID+''','''+Name+''','''+isnull(Note,'')+''',NOW(),1);' from AppModules where subsystem=1 and Pa

mssql字符串分割后的值,把表中不存在的插入表中

字符串分割后的值,把表中不存在的插入表中 --供大家参考 使用场景,自行思考…… --创建表tb1 Create table tb1 ( cola int, colb varchar(50) ) --插入数据 insert into tb1(cola,colb) select 1, 'A' union all select 2, 'B' union all select 3, 'C'; --存储过程 Create proc sp_tbTest @sid int,--ID @str varchar

【猜牌问题】甲乙都知道桌子的抽屉里有16张扑克牌: 红桃A、Q、4 黑桃J、8、4、2、7、3 草色K、Q、5、4、6 方块A、5 教授从这16张牌中挑出一张牌来,并把这张牌的点数告诉甲,把这张牌的花色告诉乙。教授问:你们能推理出是什么牌吗? 甲:我不知道这张牌。 乙:我知道你不知道这张牌。 甲:现在我知道这张牌了。 乙:我也知道了。 请问:这张牌是什么牌?

甲乙都知道桌子的抽屉里有16张扑克牌: 红桃A.Q.4 黑桃J.8.4.2.7.3 草色K.Q.5.4.6 方块A.5 教授从这16张牌中挑出一张牌来,并把这张牌的点数告诉甲,把这张牌的花色告诉乙.教授问:你们能推理出是什么牌吗? 甲:我不知道这张牌.乙:我知道你不知道这张牌.甲:现在我知道这张牌了.乙:我也知道了. 请问:这张牌是什么牌? 解: 教授告知甲点数,告知乙花色 人物 已知 未知 甲 A 红桃.方块 Q 红桃.草色 4 红桃.黑桃.草色 J 黑桃 8 黑桃 2 黑桃 7 黑桃 3 黑

mysql 获取一张表中, 另一张表不存在的数据

编写sql语句中,经常需要编写获取一张数据表中不存在与另一张表的数据,相关编写方法如下: 方法1: 使用not in ,效率低下,在数据较小的情况下可以采用如下编写 SELECT * FROM a WHERE 1=1 AND a.Id NOT IN( SELECT Id FROM B WHERE B.IsDeleted=0 GROUP BY B.Id ); 方法2:使用left join  较第一种方法快 SELECT * FROM a LEFT JOIN b ON a.Id=b.Id WHER

MYSQL查询A表中不存在于B表中的所有符合条件的数据

在开发过程中,总有一些需求是需要查看在A表中ID不存在于B表中的ID的情况: 下面有三种方法可以实现这一需求: 第一种:使用Not in 方法通过子查询的结果集来做过滤: select * from A where 1=1 AND A.ID not in (select ID from B ) 这种情况最常见也是最容易理解的逻辑SQL代码,但是会有很多问题出现. 首先,这种情况是针对数据量比较小的情况使用的,原因在于IN 和 NOT IN并不是针对索引进行查询的,操作效率相对较慢.可以通过使用N

django中数据查找条件是表中的外键对应表的列该如何查找?

1 平常查找表中数据的条件是python中已有的数据类型,通过点运算符可以直接查找.如果条件是表中外键列所对应表的某一列,该如何查询数据?比如 class News(models.Model): title = models.CharField(max_length=50); summary = models.TextField(); url = models.CharField(max_length=150); favorCount = models.IntegerField(default=

查询两个表中不同(相同)的数据,并把它们显示出来

查询两个表中不同的数据select ecs_brand.brand_id,ecs_brand.brand_name from 表名ecs_brand where ecs_brand.brand_id not in (select distinct ecs_goods.brand_id from 表名ecs_goods where ecs_goods.is_on_sale = 1 AND ecs_goods.is_alone_sale = 1 AND ecs_goods.is_delete = 0

【BIEE】04_当维度表中的维不存在事实表中,需要展示所有维度并且数据类展示为0

有时候,我们往往会存在这样的需求 例如:事实表的数据如下 EMP_FACT表示事实表,DIM_LEVEL是维度表 预期效果:(根据员工信息,分析各等级员工工资与员工个数) 我们在BIEE报表中新建报表,然后展示报表,展示结果如下: 图1 那么这个效果跟我们的预期效果可是差别比较大的!我们如何来改变这种差别呢? 首先我们分析上面2个表,我们需要解决2个问题,分别是: ①优秀.良好.一般按照顺序排列 ②当事实表不存在[一般]级别数据记录时,展示该维度,并且对应值为0 环境准备 首先在数据库建立事实表