update 把两个表关联后把B表一列的值更新A表的某一列

news/2024/7/1 11:32:05

执行update语句把两个表关联后把B表的一列更新A表中的某一列,  
  语句如下:  
  update   a  
  set   a.pd_mobile_phone   =   (select   g_telephone   from   b   where   G_idcode   =   a.pd_idcard_no)  
  where   exists   (select   1   from   b  
                                        where   (G_idcode   is   not   null     or   G_idcode   <>   '')    
                                        and   G_idcode   =   a.pd_idcard_no  
                                    )  
  但提示上面的错误,请问这样的update   语句要如何写   
  
 
 1 楼

select   g_telephone   from   b   where   G_idcode   =   a.pd_idcard_no  
  这条语句取出来有多条数据  
  而你在update时只能把其中一个值赋给   a.pd_mobile_phone  
  查查表之间的关联看


2 楼

就是select   g_telephone   from   b   where   G_idcode   =   a.pd_idcard_no  
      返回多行了
3 楼

加上max()限制返回行数,另外G_idcode   <>   ''是多余的,这个表达式永远为false,oracle中''和null是一样的概念:  
  update   a  
  set   a.pd_mobile_phone   =   (select   max(g_telephone)   from   b   where   G_idcode   =   a.pd_idcard_no)  
  where   exists   (select   1   from   b  
                                        where   G_idcode   is   not   null    
                                        and   G_idcode   =   a.pd_idcard_no  
                                    )  

 


http://www.niftyadmin.cn/n/4411697.html

相关文章

【实现一套爬虫数据抓取平台】[3-5-01] 相似文章分析

文章目录零、系列目录一、背景二、技术点三、实现步骤1、将文本分词2、将分词结果向量化3、计算两个向量的余弦相似度四、核心代码五、总结零、系列目录 写这套文章的时候&#xff0c;不会完全按照目录的顺序一篇一篇写&#xff0c; 大家可以到目录中直接找到对应的章节进行查…

undo tablespace介绍

undo tablespace介绍 <script src"http://blog.csdn.net/count.aspx?ID1576926&TypeRank" type"text/javascript"> </script> select segment_name, blocks, bytes/1024, status,BLOCK_ID,BLOCK_IDblocks-1 from dba_undo_extents wher…

【实现一套爬虫数据抓取平台】[3-3-01] 部署 Docker+Nginx+uWSGI+Flask 应用

文章目录零、系列目录一、基本概念1、Docker2、Nginx3、uWSGI4、Flask二、部署结构三、结构分析四、实现步骤1、编写 Flask 应用2、编写 uWSGI 配置文件3、编写 Nginx 配置文件4、编写 Docker 启动脚本5、编写 Docker 镜像构建文件6、编写 docker-compose 文件五、测试1、运行2…

逐渐的废掉——所谓的真理

1。好好规划自己的路&#xff0c;不要跟着感觉走&#xff01;根据个人的理想决策安排&#xff0c;绝大部分人并不指望成为什么院士或教授&#xff0c;而是希望活得滋润一些&#xff0c;爽一些。那么&#xff0c;就需要慎重安排自己的轨迹。从哪个行业入手&#xff0c;逐渐对该行…

【刷题】华为笔试面试机考 [HJ30] - 字符串合并处理

题目地址 点击跳转 题目描述 按照指定规则对输入的字符串进行处理。 详细描述&#xff1a; 将输入的两个字符串合并。 对合并后的字符串进行排序&#xff0c;要求为&#xff1a;下标为奇数的字符和下标为偶数的字符分别从小到大排序。这里的下标意思是字符在字符串中的位…

CMPP-SGIP协议设计与实现

移动梦网和联通在信都是构建在有中国特色的短信网关部件基础上的&#xff0c;亚信为中国移动设计的CMPP协议规范&#xff0c;中国联通的SGIP规范都是为这个短信网关提供的互联网接口标准&#xff0c;可以看出二者都是借鉴GSM SMPP协议的两种简化版。 CMPP提供了基于TCP的长连接…

【刷题】数据库SQL实战 [SQL01] - 查找最晚入职员工的所有信息

题目地址 点击跳转 题目描述 有一个员工employees表简况如下: 建表语句如下: CREATE TABLE employees ( emp_no int(11) NOT NULL, birth_date date NOT NULL, first_name varchar(14) NOT NULL, last_name varchar(16) NOT NULL, gender char(1) NOT NULL, hire_date dat…

【刷题】数据库SQL实战 [SQL02] - 查找入职员工时间排名倒数第三的员工所有信息

题目地址 点击跳转 题目描述 有一个员工employees表简况如下: 建表语句如下: CREATE TABLE employees ( emp_no int(11) NOT NULL, birth_date date NOT NULL, first_name varchar(14) NOT NULL, last_name varchar(16) NOT NULL, gender char(1) NOT NULL, hire_date dat…