我现在有一句SQL,目的是取得mtl_material_transactions表中在指定时间段内的数据,表中的数据量现在是590多万条,我现在需要做一个Discoverer 的报表,所以这个SQL要写在View 里面,SQL如下:
select /*+ index(mmt mtl_material_transactions_N5) */
mmt.organization_id,
mmt.inventory_item_id,
to_char(trunc(mmt.transaction_date),'yyyymmdd') the_date,
mmt.transaction_quantity qty
from mtl_material_transactions mmt,
org_organization_definitions ood
where 1=1
and mmt.organization_id = ood.organization_id
and to_char(mmt.transaction_date,'yyyymmddhh24miss') >= '20051011080000' and mmt.transaction_type_id in (17,44)
and to_char(mmt.transaction_date,'yyyymmddhh24miss')
= to_date('20051011080000' ,'yyyymmddhh24miss')
但是运行的时候提示是无效的月份,可是我看了一下mmt.transaction_date的格式确实是这种形式的,为了使mmt.transaction_date的索引不失效,又不能转换mmt.transaction_date的格式,可怎么办哪…………
|