添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

后来发现是因为在子查询中SQL语句返回多条结果。

select distinct CUS_GOODSNO from v_biz_goods_match d
where d.SUP_GOODSNO = i.GOODSID and d.flag = 0 and d.deleted = 0 and d.CUS_ORGID = i.CUSTOMCODEINSYS and d.SUP_ORGID = 'S00000001'

SQL语句:

select
i.create_date,
i.create_user,
i.id,
i.update_date,
i.update_user,
i.deleted,
(select distinct CUS_GOODSNO from v_biz_goods_match d
where d.SUP_GOODSNO = i.GOODSID and d.flag = 0 and d.deleted = 0 and d.CUS_ORGID = i.CUSTOMCODEINSYS and d.SUP_ORGID = 'S00000001' and rownum=1 ) cusgoodsno,
from BIZ_HRHN_RETURN_INVOICE i
where i.CUSTOMCODEINSYS = 'H00000012' order by i.create_date desc;

在子查询中加上and rownum = 1,强制返回一条结果。

Ora cle数据库日常运维与开发过程中,经常会遇到 ORA - 01427 错误,这是一个很典型的数据库错误提示,表明在执 SQL 查询时,一个预期只 返回 单行 结果的 子查询 实际上 返回 了多 数据。总结来说,解决 ORA - 01427 错误的关键在于确保 子查询 返回 结果与上下文相匹配,如果确实需要处理多 结果,就要相应地调整查询逻辑,使用适合多 返回 SQL 构造,或是通过关联查询等方式来达到目的。当一个员工有多条未结束的薪水记录时,上述查询的 子查询 返回 多个 最大薪水值,而这在单一列中是不允许的。等窗口函数来决定选取哪一 。 select * from 表a a where a.name = (select b.namefrom 表b b where b.name = '张三' ) 原本想通过()中的内容赋予a.name值,但后方select 返回 的可能是多 数据,例如 scode ORA - 01427 错误的根本原因是 子查询 返回 了多 结果,但在 SQL 语句中期望得到的是 单行 结果。解决该问题的关键是确保 子查询 返回 单行 ,或者使用 IN 等允许多 结果的语法结构来处理查询逻辑。 今天的一段批量更新的 sql 语句,稍微修改了一下就报错: ORA - 01427 : 单行 子查询 返回 多个 。这个问题其实之前有遇到过几次,原因也比较简单,就是没有做好 子查询 的约束条件,导致该 返回 一条数据的地方 返回 了多条。下面这段 sql 其实不应该报错的,只是我在 多个 数据库环境中切换的时候,没有同时更新到最新的表结构导致的。跳过这段 SQL ,详细分析一下这个问题出现的原因以及有效的避免方法。 UPDATE P... 今天开发的同事反馈一个问题,该程序已经使用一段时间,在查询昨天的数据时突然报出了错误:                       图1   OR- 01427 :single-row subquery returns more than one row  异常为: 单行 子查询 返回 我得到了该查询页面对应的 sql 语句:  SELECT  ID,(SELECT NAME FROM TABL 我在日常开发中经常需要往原先的 sql 上增加 子查询 ,使得程序能够显示新的相关内容,但是有时也会出现 单行 子查询 返回 结果的问题有些时候是因为关联关系没有写到位,而也有些是特殊情况,需要特殊处理以该 sql 为新增的 子查询 # sql 查询结果A张三B李四C王五以下是我最近总结的处理方式。 前几天开发的同事反馈一个问题,说前台系统报出了 ORA 错误,希望我们能看看是什么原因。 java. sql . SQL Exception: ORA - 01427 : single-row subquery returns more tha...