帮忙优化Select语句

[复制链接]
查看11 | 回复7 | 2008-9-27 20:28:18 | 显示全部楼层 |阅读模式
请帮忙看一看这两个Select语句, 可不可以改进一下缩短运行时间
First one:
SELECT mara~matnr mara~mtart

mara~meins mvke~prat2

INTO TABLE t_matnr

FROM mara

LEFT OUTER JOIN mvke

ON mara~matnr = mvke~matnr

AND mvke~vkorg = v_vkorg

INNER JOIN marc

ON mara~matnr = marc~matnr

WHERE mara~matnr IN s_matnr

AND marc~werks IN p_werks

AND mara~matkl IN s_matkl.
Second one:
IF t_matnr_mard IS NOT INITIAL.
SELECT werks matnr lgort

labst umlme insme

einme speme retme

FROM mard

INTO TABLE t_mard
FOR ALL ENTRIES IN t_matnr_mard
WHERE matnr = t_matnr_mard-matnr

AND werks IN p_werks

AND lvorm NE 'X'

AND ( labst > 0 OR umlme > 0 OR

insme > 0 OR einme > 0 OR

speme > 0 OR retme > 0 ).
多谢!
EY
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
part1:
拆开LEFT OUTER JOIN mvke,用 FOR ALL ENTRIES IN ,然后再做BINARY SERACH,应该会快点。
part2:应该还好吧....
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
现在很慢 ?
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
是的, 很慢
Binary_1985,
能不能具体一点, 或者写一下code. 我不是abap developer.
多谢
EY
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
原帖由 binary_1985 于 2009-2-25 09:35 发表
part1:
拆开LEFT OUTER JOIN mvke,用 FOR ALL ENTRIES IN ,然后再做BINARY SERACH,应该会快点。
part2:应该还好吧....

数据超过1w条的话貌似, FOR ALL ENTRIES效率开始降低了~~~
不知道lz数据量啊
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
真会利用资源啊
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
奈斯 照布~~
万一遇到 隔路的人儿~~哈哈
回复

使用道具 举报

千问 | 2008-9-27 20:28:18 | 显示全部楼层
咖啡君:
Mara: 3,200,000
Marc: 2,200,000
Mvke: 1,800,000
我需要的在特地的组下
mara iner join marc 总共还有 28000 条记录
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行