oracle 求大神解决谢谢!!!! select报错怎么改 急急急

select mv.*,(select r.currency,trunc(r.rcv_date,'MM') as rcv_date,sum(decode(r.transaction_type, 'RECEIVE', 1, -1) * r.QUANTITY)
from epms_erp_rcvqty_info r
where r.LINE_LOCATION_ID = '33733'
and r.rcv_date >= to_date('2016-1-26','yyyy-MM-dd')
and r.rcv_date < to_date('2016-2-26','yyyy-MM-dd')
and r.transaction_type in ('RETURN TO VENDOR', 'RECEIVE') group by (trunc(r.rcv_date,'MM'),r.currency)
) as QUANTITY
from po_price_view_mv mv

错误信息可以贴出来。

粗略看一次,大概可能是个问题:
to_date中format和value规则不对应,如to_date('2016-02-26','yyyy-MM-dd')

楼主这个sql写的不对,报错应该是值过多,子查询只能有一个字段,你子查询里那么多,而且你这个子查询和mv表也没啥关系,也可能出现单行返回多行的问题。

and r.rcv_date >= to_date('2016-1-26','yyyy-MM-dd')
and r.rcv_date < to_date('2016-2-26','yyyy-MM-dd')
前后值不对应,后面是MM,前面传的确实1