ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

SQL ABAP ST05 hint

2019-07-22 22:06:22  阅读:298  来源: 互联网

标签:00 01 hint ABAP ST05 ORDERADM NLJOIN CRM


Sent: Thursday, May 14, 2015 10:27 PM

Q1. 客户用了很多select , 但在后面的程序里面只用到了LT_ORDERADM_H 的部分fields, select 会影响性能么?

SELECT * INTO CORRESPONDING FIELDS OF TABLE LT_ORDERADM_H FROM CRMD_ORDERADM_H AS A1
INNER JOIN CRM_JEST AS B1 ON B1~OBJNR = A1~GUID
WHERE A1~PROCESS_TYPE EQ 'ZQ32'
AND   B1~STAT IN ('E0002','E0004','E0006') .

Q2.上面这段,满足crmd_orderadm_h~process_type = ZQ32的有6200条,满足CRM_jest的有300多万条。觉得可以用NLJOIN,可是翻译出来是用了HSJOIN。想问下怎么加hint可以强制到NLJOIN呢?我的格式怎么加也加不对。。。无法在ST05里面看到结果。。

SELECT *
FROM
"CRMD_ORDERADM_H" T_00 INNER JOIN "CRM_JEST" T_01 ON T_01."MANDT" = ? AND T
_01."OBJNR" = T_00."GUID"
WHERE
T_00."CLIENT" = ? AND T_00."PROCESS_TYPE" = ? AND T_01."STAT" IN ( ?, ?, ?
)  WITH UR

/* <OPTGUIDELINES>   ç=============我想加这个hint, 改到NLJOIN, 驱动表是crmd_orderadm_h,然后给CRM_JEST强制用index ~0,但是ST05失败。。
<NLJOIN>
<IXSCAN TABLE='T_00' INDEX='"T_00~ARC"'/>
<IXSCAN TABLE='T_01' INDEX='"T_01~0"'/>
</NLJOIN>
</OPTGUIDELINES> */

只有用到 /* */的时候变成了NLJOIN
解析如下,有warning.

不加hint时,解析如下,estimated costs还比加了hint少呢。。。是这么看的么?

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

标签:00,01,hint,ABAP,ST05,ORDERADM,NLJOIN,CRM
来源: https://blog.csdn.net/i042416/article/details/96904676

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有