zhang1102344558
zhang1102344558
采纳率0%
2016-04-21 02:15

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • w172087242 little_how 5年前

    错误信息可以贴出来。

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

    点赞 评论 复制链接分享
  • liang061145 Sylar.Liang 5年前

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

    点赞 评论 复制链接分享
  • theUncle paavochan 5年前

    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

    点赞 评论 复制链接分享

相关推荐