ABAP-面试及答案-Interview+Questions面试问题集1
尽量使用 Select(max,min,sum,avg)和 select single,for all enteris,二分法,append和 collect loop 里不能套 select;避免使用 select distinct,替代先 sort,再 delete; ① 抽取数据时,避免使用 SELECT *, 尽量使用 SELECT A B INTO TABLE ITAB 这样的语句
② 不要使用 SELECT
ENDSELECT 语句
③ 尽量避免在 LOOP 中访问数据库
可以在之前先把数据取到内表,在 LOOP 中用READ TABLE WITH KEY
BINARY SEARCH
进行读取对应的数据
④ 用 SORT 替代 ORDER BY
⑤ 使用二分查找法
READ TABLE 的之前使用 SORT TABLE BY 对内表进行排序, 然后使用 READ TABLE WITH KEY
BINARY SEARCH
⑥ 避免使用 SELECT DISTINCT 语句
在抽取数据到内表后用 DELETE ADJACENT DUPLICATES 语句来消除反复行
⑦ 尽量多指定 WHERE 语句条件
⑧ 在 WHERE 语句指定查询条件时,在同等条件下把包含等号的查询条件放到前边
什么时候使用 For all entries 命令及其使用时的注意事项
当需要在 LOOP 中使用查询语句时,一般使用 For all entries
注意事项:① IN 条件所在的内表不能为空(如为空将取出所有的数据);② 数据库字段与内表中的关联比较字段必须具有相似的类型和长度,且不能在比较中使用操作符 LIKE、BETWEEN 和 IN,同步不能使用 ORDER BY