m0_58149371 2021-06-08 23:54 采纳率: 60%
浏览 45
已采纳

子查询返回多于一行。

sql语句:SELECT d.di_Id,d.sl_SerialNumber,(SELECT SUM(pd_Subtotal) FROM tab_purchasedetails WHERE sl_SerialNumber=d.sl_SerialNumber)
 sl_Money,s.s_Name,d.di_Time,(SELECT pd_Name FROM tab_purchasedetails WHERE sl_SerialNumber=sl_SerialNumber) di_Remark FROM
 tab_disbursements d join tab_staff s on d.s_Id=s.s_Id

我百度过了没有解决成功,求大佬帮忙解决一下,万分感谢,非常感谢🙏

  • 写回答

5条回答 默认 最新

  • Mr.DYD 2021-06-09 08:22
    关注

    1.(SELECT pd_Name FROM tab_purchasedetails WHERE sl_SerialNumber=sl_SerialNumber),后一个sl_SerialNumber是否要明确下对应表。

    2.确定tab_purchasedetails针对同一sl_SerialNumber没有重复行。

    检查方式:

    select * from tab_purchasedetails where sl_SerialNumber in (select sl_SerialNumber from tab_purchasedetails group by sl_SerialNumber     having count (sl_SerialNumber) > 1)

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?