今天学习一下内表的READ TABLE 表达式在ABAP 7.4之后的语法: SELECT * FROM mara INTO TABLE @DATA(gt_mara) UP TO 10 ROWS. DATA gt_mara_sort TYPE SORTED TABLE OF mara WITH UNIQUE KEY primary_key COMPONENTS matnr. "旧语法 DATA LV_MATKL TYPE MARA-MATKL. READ TABLE GT_MARA INDEX 1 INTO D...
1, STANDARD TABLE 与TYPE TABLE OF 效果一样,都是标准表 2, SORTED TABLE 3, HASHED TABLE 在不同的场合下,READ TABLE查找数据时三种内表会有不同的效率。 STANDARD TABLE是标准表,也是最常用的内表,特点如下: 1, 可以不指定KEY,但只能指定 NON-UNIQUEKEY 2, 可以使用INDEX和KEY来查询 注:NON-UNIQUE KE...
1, STANDARD TABLE 与TYPE TABLE OF 效果一样,都是标准表 2, SORTED TABLE 3, HASHED TABLE 在不同的场合下,READ TABLE查找数据时三种内表会有不同的效率。 STANDARD TABLE是标准表,也是最常用的内表,特点如下: 1, 可以不指定KEY,但只能指定 NON-UNIQUE KEY 2, 可以使用INDEX和KEY来查询 注:NON-UNIQUE ...
- 使用WITH TABLE KEY选项指定WHERE条件,以避免全表扫描。 - 使用SORTED TABLE选项定义目标表,以利用二分查找算法提高搜索性能。 - 避免在循环中频繁使用READ语句,可以将数据读取到内表中后再进行处理。 7. READ语句的错误处理 在使用READ语句时,需要对可能出现的错误进行处理。可以使用系统变量sy-subrc来检查语句执...
所以READ在查询排序表时,如果查询的关键字段等于或包含排序表关键字段,则使用二分查找。 当排序表的关键字段,在READ查询中未使用,则会进行线性搜索,比如: "---@斌将军---DATA:lt_acd_sortTYPESORTEDTABLEOFacdocaWITHNON-UNIQUE KEY rbukrs gjahr belnr docln. lt_acd_sort=lt_acd.GETTIMESTAMPFIELDlv_curren...
DATA:lt_acd_sort TYPE SORTED TABLE OF acdoca WITH NON-UNIQUE KEY rbukrs gjahr belnr docln. lt_acd_sort = lt_acd. GET TIME STAMP FIELD lv_current1. CLEAR:lv_index. LOOP AT gt_acd INTO gs_acd. READ TABLE lt_acd_sort INTO ls_acd WITH KEY rbukrs = gs_acd-rbukrs ...
Read table <itab> with key col=<> Binary search. 哈希表,表类型关键字为HASHED TABLE,没有索引,只能通过关键字来访问,系统用哈希算法管理表中的数据,因而其寻址一个数据行的时间与表的大小无关。 standard table,sorted table 可以通过索引和关键字进行访问,hashed table 只能...
•READ TABLE:将内部表的某一特定行的数据读到工作区中 •SORT:对内部进行排序 •CLEAR:清除工作区的内容 •REFRESH:删除内部表中的所有记录 系统变量SY-TABIX可以表示内部表当前所在行 2 数据库查询逻辑 1两种方式访问数据库 •在ABAP程序中,可以通过两种方式访问数据库 ...
–排序表SORTED TABLE 具有逻辑索引 寻址操作通过关键字或者索引 按表关键字升序后存储 –哈希表HASHEDTABLE 没有逻辑索引 寻址操作只通过关键字 •行类型 基本类型结构体内表 •表关键字 –行结构为结构体 WITH [UNIQUE|NON-UNIQUE] KEY comp1 … compn ...
DATA sflight_tab TYPE SORTED TABLE OF sflight WITH UNIQUE KEY carrid connid fldate. SELECT * FROM sflight WHERE carrid = @carrid AND connid = @connid INTO TABLE @sflight_tab. IF sy-subrc = 0. READ TABLE sflight_tab WITH TABLE KEY carrid = carrid connid = conn...