两表(多表)关联update的写法 .

原文:两表(多表)关联update的写法 .

关于两表关联的update,可以把SQL写成了在SQL Server下面的特有形式,但是这种语法在Oracle下面是行不通的

   update customers a
   set    city_name=(select b.city_name from tmp_cust_city b where b.customer_id=a.customer_id)
   where  exists (select 1
                  from   tmp_cust_city b
                  where  b.customer_id=a.customer_id
                 )

   -- update 超过2个值
   update customers a 
   set    (city_name,customer_type)=(select b.city_name,b.customer_type
                                     from   tmp_cust_city b
                                     where  b.customer_id=a.customer_id)
   where  exists (select 1
                  from   tmp_cust_city b
                  where  b.customer_id=a.customer_id
                 )

-

资料引用:http://www.knowsky.com/347147.html

时间: 2024-10-02 08:41:53

两表(多表)关联update的写法 .的相关文章

sql-在一个已有数据的表里添加一列,并在此列添加另一个表里数据,两张表有id关联

问题描述 在一个已有数据的表里添加一列,并在此列添加另一个表里数据,两张表有id关联 现有数据表table1,table2,table1的列为id,name,table2的列为id,age. 两张表里都已有数据,现需要将table2里的age数据添加到table1,要怎么处理 注,已尝试过 添加一列后 update table1 a set a.age=(select b.age from table2 b where a.id=b.id) 运行后a.age 仍然为null 求解答,不胜感激 解

sqlserver-数据库方面的问题,两张表有一个关联表

问题描述 数据库方面的问题,两张表有一个关联表 怎么才能通过关联表的信息找到其他两张表的基本信息呢? 一个是学生的基本信息表(uid,uname...) 一个是课程的基本信息表(tid,tname,ttype) 一个是中间表,使用外键进行连接(id,uid,tid) 现在想通过中间表中的tid找到uname和tname,ttype,一条sql语句不太懂怎么写,谢谢各位啊 解决方案 select * from T_student s inner join T_MID m on s.uid=m.ui

sql语句-如何用SQL语句实现两张表(无关联)查询后,分别将各自的一个字段,插入一个新表。

问题描述 如何用SQL语句实现两张表(无关联)查询后,分别将各自的一个字段,插入一个新表. 有A.B.C三张表如下, 表 A 表B 学生ID(主键) 学生名称 课程ID(主键)| 课程名称 表 C 学生ID 课程ID (联合主键) 那么,通过SQL语句操作如何用学生姓名和课程名(只能获取学生姓名和课程名)将课程ID和学生ID插入到C表(C表中有课程ID和学生ID并且是联合主键),感激不尽. 解决方案 你可以定义2个变量,分别从表A表B用名称查询到ID.在表C的新增语句中使用这2个变量. 不过你这

图片-xutils dbutils 如何关联两个不同表

问题描述 xutils dbutils 如何关联两个不同表 提示如下 .可明明 person表是有的shopid列的 解决方案 http://blog.csdn.net/jjwwmlp456/article/details/44084411

数据库中几个表之间的关联查询

数据|数据库    在数据库操作中,有很多时候不是对某一个表进行数据库操作,通常还会把其他表的字段的值也传递过来.不过这连个表不是没有关系的.通常通过索引或者健关联起来        如下为一个例子.        表一.表名称tb1.其中studentID为主索引.外健. studentID studentName studentGender studntAge 3102079014 刘永相 男 25 3102079015 赵某某 男 23        表二.表名称tb2.其中teacher

SQLServer表内自关联级联删除

今天处理SQLServer级联删除遇到了很蛋疼的事. SQLServer 不支持表内自关联级联删除,而MySql和Oracle却支持. 貌似原因是SQLServer 会产生循环级联,就不给这样弄.所以很明确说:SQLServer 是不支持表内自关联级联删除. 那怎么办呢:只能用触发器呗 IF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE NAME = 'tg_SysDelete' AND TYPE = 'TR') DROP TRIGGER tg_SysDel

MyBitis(iBitis)系列随笔之五:多表(一对多关联查询)

MyBitis(iBitis)系列随笔之一:MyBitis入门实例 MyBitis(iBitis)系列随笔之二:类型别名(typeAliases)与表-对象映射(ORM) MyBitis(iBitis)系列随笔之三:简单实现CRUD MyBitis(iBitis)系列随笔之四:多表(多对一查询操作) MyBitis(iBitis)系列随笔之五:多表(一对多关联查询) MyBitis(iBitis)系列随笔之六:mybitis与spring集成          这篇博文介绍的是多表中的一对多表关

oracle-Oracle中两个表连表查询,怎么实现?

问题描述 Oracle中两个表连表查询,怎么实现? 表1. 表2. 结果1. 结果2. 现在有两张表,表1和表2,写 sql 语句,查询出 结果1或结果2. 表1中,org_code唯一.并且不存在重复项,结果中要查出来全部表1的数据 解决方案 select * from a left join b on a.org_code = b.org_code where b.version_no is null or b.version_no='1'; 自己写的,这个可以用,不知道还有没有别的办法??

jsp获取二级联动下拉列表的两个值 表单

问题描述 jsp获取二级联动下拉列表的两个值 表单 1 <html> <head> <title>This is a test!</title> </head> <body> <form name="frm" action="demo1.jsp"> <select name="s1" onChange="redirec(document.frm.s