在做项目时,经常需要在量表之间进行字段赋值进行初始化

例如:

update TB_PER_INTERNALDISMISSION ti

set ti.C_UNITID =

nvl((select ts.C_OLDUNITID

from TB_PER_STAFFRECORD ts

where ts.c_empoid = ti.c_empoid

and ts.c_recordtype = '7'

and ts.c_recordtime =

(select max(staff.c_recordtime)

from TB_PER_STAFFRECORD staff

where staff.c_empoid = ts.c_empoid

and staff.c_recordtype = '7')

),0)

我们可以看到,在上面的代码充分估计到了空值的现象(nvl),并对可能的多条记录只取记录最新的列表,但依然可能报错

单行子查询返回多个行或者“ORA-01427:single-row subquery returns more than one row

这里就需要仔细查看自己的代码逻辑,一般来说是自己的代码逻辑出现了问题,如果确定没有问题,则可能是数据库里面存在重复数据

这就需要对重复数据进行查询

select count(1),ts.c_empoid,ts.c_recordtime

from TB_PER_STAFFRECORD ts

where ts.c_recordtype = '7'

and ts.c_recordtime =

(select max(staff.c_recordtime)

from TB_PER_STAFFRECORD staff

where staff.c_empoid = ts.c_empoid

and staff.c_recordtype = '7')

group by ts.c_empoid,ts.c_recordtime

having count(1)>1这就是对上面代码进行重复数据的查询,从而找到了重复数据

重复数据的出现可能有很多,最常见的是在代码设计阶段的循序渐进造成的,虽然不多,但报错之后影响查询,需要注意,另外一点,可以在开发阶段专门用一个测试数据库,开发完成之后再进行回滚,则可以避免这部分的内容

oracle 字段对错,oracle 两表之间字段赋值错误解析相关推荐

  1. mysql两表之间字段匹配concat_实例学习MySQL多表之间字段的匹配

    多表之间字段进行匹配的sql语句: 复制代码 代码示例: $sql=$empire->query("select table.title,lianxi,table.dizhi,tabl ...

  2. a表两个字段都与b表一个字段关联_Oracle系列第二章----表,精彩延续。。。

    第一节 表的概念 表设计的原则 2.1 表 数据库中以表为组织单位存储数据.表用来存储一些事物的信息,首先需要有一个表名,以及存储的信息. 2.2 设计原则 好的数据库表设计会影响数据库操作效率.特别 ...

  3. 如何更新mysql数据库字段_如何使用MySQL一个表中的字段更新另一个表中字段

    1,修改1列 update student s, city c set s.city_name = c.name where s.city_code = c.code; 2,修改多个列 update ...

  4. oracle查找相似字段,两表相似字段查询,如何查询

    非常感谢. 对于两表中的某一字段进行查询, 但这两表没有确定的关联,只有一个字段中的内容有相似可比处,建立关联查询. 但查询结果不能令人满意. 表1:yy_sybm_temp create table ...

  5. SqlServer两表之间:根据一个表的字段更新另一个表的字段

    经百度查询到如下两种写法: 1. 写法轻松,更新效率高: update table1 set field1=table2.field1, field2=table2.field2 from table ...

  6. Oracle读取数据库中表填充,Oracle数据库中查看所有表和字段以及表注释.字段注释...

    1.获取表: select table_name from user_tables; //当前用户拥有的表 select table_name from all_tables; //所有用户的表 se ...

  7. a表两个字段都与b表一个字段关联_数据库表的主键实例分析

    主键(PRIMARY KEY):数据库表通常具有包含唯一标识表中每一行的值的一列或一组列.这样的一列或多列称为表的主键 (PK),用于强制表的实体完整性. 业务主键(自然主键):在数据库表中把具有业务 ...

  8. hive 指定字段插入数据_Hive 表之间数据处理,Int 类型字段部分字段出现 NULL情况...

    背景 hive 中有一张待处理的分区表,存储的方式是parquet,处理之后的目标表是一张非分区的外部表,并且分隔方式为 ",". 问题 部分记录的 int 类型字段 出现 nul ...

  9. mysql 单表多字段查询_单表多字段MySQL模糊查询的实现

    MySQL模糊查询是我们经常会遇到的,下面就为您介绍MySQL模糊查询的实现方法,希望对您学习MySQL模糊查询方面能够有所帮助. 在最近的一个项目需要实现在单表中对多字段进行多个关键字的MySQL模 ...

  10. mysql表中字段数据类型_mysql数据表中字段的数据类型有哪些?

    数据表中字段的数据类型有:TINYINT.SMALLINT.MEDIUMINT.INT.INTEGE.DATETIME.DATE.TIMESTAMP.TIME.YEAR.CHAR.VARCHAR.TE ...

最新文章

  1. C语言——冒泡法排序应用
  2. MySQL的表空间管理
  3. matlab练习程序(各向异性扩散)
  4. 原型 - 实现自己的jQuery
  5. python3 通过百度地图API获取城市POI点并存于CSV格式
  6. iis日志字段解析 网站运维工具使用iis日志分析工具分析iis日志(iis日志的配置)
  7. 快看漫画个性化推荐探索与实践.pdf(附下载链接)
  8. 3-汇编语言中与内存访问相关的寄存器/操作(DS+数据段+SS/SP+栈相关操作)
  9. Riemann问题精确解及程序实现
  10. 快半步是天才,快一步是疯子,马云14年前错失一个“微信”?
  11. 服务器存在缓慢的HTTP拒绝服务攻击
  12. javaScript中内置对象Date基本操作入门
  13. css3如何实现动画效果
  14. 天下英雄出我辈 一入江湖岁月催 《江湖行》
  15. AutoCAD 的托管程序集
  16. java 菱形代码加解释_Java 9增强的“菱形”语法
  17. MineMap地图web端定位问题处理
  18. 人工智能 水壶问题 python解法
  19. SpringCloud-服务注册与发现
  20. 编写一个程序,提示用户输入身高单位(英寸,米,厘米)包括姓名使用float类型

热门文章

  1. tips to understand kexec
  2. 替换换行符:回车换行CR/LF
  3. C++ 输入输出,IO
  4. HDU1686:Oulipo
  5. Operation not applicable
  6. Linux下安装、配置、授权、调优Mysql
  7. 分页打印控制 摘自于网络:http://www.cnblogs.com/joinger/articles/1807517.html
  8. php中url传递中文字符,特殊危险字符的解决方法
  9. 【Hoxton.SR1版本】Spring Cloud Consul服务注册中心搭建
  10. 7内置数据结构_dict