oracle查找指定范围月份中的统计数据

 

需求:

页面选择月份

oracle查找指定范围月份中的统计数据_第1张图片

两张表的关系为一对多,既一条T_SO_SELLERORDERUS表的记录对应多条T_SO_ORDERITEM_US表的记录,两表的关联关系为SO_CODE

从后台中获取到这个月份之前12个月的每个月记录中OI_QUANTITY的总数

表   T_SO_SELLERORDERUS,其中我们关注的是这个表的时间

 

oracle查找指定范围月份中的统计数据_第2张图片

和T_SO_ORDERITEM_US 其中我们关注的是这个表的OI_QUANTITY既是我们要进行sum或者count的字段

oracle查找指定范围月份中的统计数据_第3张图片

 

sql语句

       select to_char(orders.SO_CREATEDATE,'yyyy-mm') as sellerSku,sum(item.OI_QUANTITY) as ioQuantity from T_SO_ORDERITEM_US item LEFT JOIN         T_SO_SELLERORDERUS orders on orders.SO_CODE=item.SO_CODE
       WHERE (
       orders.SO_CREATEDATE BETWEEN add_months( to_date(#soCode#, 'yyyy-mm' ), - 12 )
       AND to_date(#soCode#, 'yyyy-mm' ) or to_char(orders.SO_CREATEDATE,'yyyy-mm') like concat(concat('%',#soCode#),'%')) and orders.SOS_CODE='L' and orders.COMP_ID=#compId#
       group by to_char(orders.SO_CREATEDATE,'yyyy-mm') order by to_char(orders.SO_CREATEDATE,'yyyy-mm')
 

你可能感兴趣的:(oracle,oracle,数据库)