abap 物理表for all entries in和内表关联,如何select出内表的全部字段
时间: 2024-02-24 13:55:16 浏览: 70
怎样获取一个表中所有字段的信息
在 ABAP 中,可以通过使用 SELECT 语句和 FOR ALL ENTRIES IN 子句来将内表与物理表关联,并且可以 SELECT 出内表的全部字段。
以下是一个示例代码:
```
DATA: lt_itab TYPE STANDARD TABLE OF <内表类型> WITH HEADER LINE,
lt_phystab TYPE STANDARD TABLE OF <物理表类型> WITH HEADER LINE.
* 假设内表 lt_itab 中有多个字段,需要输出全部字段
SELECT *
INTO CORRESPONDING FIELDS OF TABLE lt_phystab
FROM <物理表>
FOR ALL ENTRIES IN lt_itab
WHERE <物理表>.<字段> = lt_itab-<内表字段>.
* 输出内表全部字段
LOOP AT lt_itab INTO <内表行>.
READ TABLE lt_phystab
WITH KEY <物理表>.<字段> = <内表行>-<内表字段>.
IF sy-subrc EQ 0.
WRITE:/ <内表行>-<内表字段1>, <内表行>-<内表字段2>, ... <内表行>-<内表字段n>.
ENDIF.
ENDLOOP.
```
在这个示例代码中,我们首先定义了一个内表 lt_itab 和一个物理表 lt_phystab。然后我们使用 SELECT 语句和 FOR ALL ENTRIES IN 子句将这两个表关联起来,并从物理表中选择所有符合条件的行。
在循环内部,我们使用 READ TABLE 语句根据内表 lt_itab 中的字段值找到相应的物理表行,并输出内表的全部字段值。
需要注意的是,为了输出内表的全部字段,我们需要在 WRITE 语句中列出所有的字段名。
阅读全文