单行子查询返回多行 - 如何查找副本?

opH*_*AME 4 sql database oracle

我不是一个大的ORACLE - SQL专家,所以我希望有人知道找到"重复"记录的好方法,它导致:单行子查询返回多行错误.

这是我的声明:

    SELECT
    CAST(af.SAP_SID AS VARCHAR2(4000)) APP_ID,
    (SELECT DR_OPTION
       FROM
          DR_OPTIONS 
       WHERE DR_OPTIONS.ID = (
            select dr_option from applications where applications.sap_sid = af.sap_sid)) DR_OPTION
FROM
    APPLICATIONS_FILER_VIEW af
Run Code Online (Sandbox Code Playgroud)

它适用于我的测试系统,因此我"确定"可用数据记录中必定存在错误,但我不知道如何找到它们.

A.B*_*ade 6

尝试使用此查询:

select applications.sap_sid, count(dr_option) 
from applications 
group by applications.sap_sid 
having count(dr_option) > 1
Run Code Online (Sandbox Code Playgroud)

这应该为您提供重复行的sap_sid