SAP ZYFLL 从 COVP(视图) 取数,数量级10亿级别
其中一个查询字段是期间
这样输入时,结果很快出来 单输入1 月 单输入2月 都能快速出来
这样也是很快出结果的
以上这样查询,要等n久 超时了
对应代码 段
*************领料单信息
SELECT
COVP~BUKRS
COVP~PERIO"期间
COVP~GJAHR"会计年度
COVP~VERSN"版本号
COVP~WRTTP"值类型
COVP~MBGBTR"全部数量
COVP~REFBN"参考凭证号
COVP~BLDAT"凭证日期
COVP~MATNR"物料号
COVP~MEINH"单位
COVP~GKOAR
MAKT~MAKTX"描述
INTO (ITAB-BUKRS,ITAB-PERIO,ITAB-GJAHR,ITAB-VERSN,ITAB-WRTTP,ITAB-MBGBTR,ITAB-REFBN,ITAB-BLDAT,ITAB-MATNR,ITAB-MEINH,ITAB-GKOAR,ITAB-MAKTX)
FROM COVP
INNER JOIN MAKT ON MAKT~MATNR = COVP~MATNR
WHERE
COVP~OBJNR = ITAB-OBJNR AND COVP~KOKRS = ITAB-KOKRS AND COVP~GJAHR = P_GJAHR AND
COVP~MATNR IN S_MATNR AND
COVP~REFBN IN S_REFBN AND
COVP~PERIO IN S_PERIO AND
COVP~WRTTP IN S_WRTTP AND
COVP~BUKRS IN S_BUKRS.
刚开始还怀疑是界面上 后面的月份没有加上年度的问题,但是COVP的PERIO 只有3位
不能加年度。
综上,在这个案例里面的 sql between A and B 的效率是非常低下的