Текущее время: Вс, июл 27 2025, 10:39

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: FULL OUTER JOIN
СообщениеДобавлено: Сб, дек 03 2011, 11:54 
Начинающий
Начинающий

Зарегистрирован:
Сб, дек 03 2011, 11:51
Сообщения: 9
Подскажите плз, как на ABAP сделать FULL OUTER JOIN двух таблиц?
или какую нибудь технику как это сделать с помощью loop?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: FULL OUTER JOIN
СообщениеДобавлено: Сб, дек 03 2011, 15:53 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 03 2009, 15:37
Сообщения: 292
Откуда: Алматы
Пол: Мужской
Vugl написал(а):
Подскажите плз, как на ABAP сделать FULL OUTER JOIN двух таблиц?
или какую нибудь технику как это сделать с помощью loop?

Можно так...
Code:
TYPES: BEGIN OF ll_tab1
         , field1
         , field2
         , END OF ll_tab1
         , lt_tab1 TYPE STANDARD TABLE OF ll_tab1 WITH KEY field1.
DATA: lt_tab1 TYPE lt_tab1
    , ll_tab1 TYPE ll_tab1.

TYPES: BEGIN OF ll_tab2
         , field2
         , text2
         , used
         , END OF ll_tab2
         , lt_tab2 TYPE STANDARD TABLE OF ll_tab2 WITH KEY field2.
DATA: lt_tab2 TYPE lt_tab2
    , ll_tab2 TYPE ll_tab2.

TYPES: BEGIN OF ll_tab3
         , field1
         , field2
         , text
         , END OF ll_tab3
         , lt_tab3 TYPE STANDARD TABLE OF ll_tab3 .
DATA: lt_tab3 TYPE lt_tab3
    , ll_tab3 TYPE ll_tab3.

FIELD-SYMBOLS: <ll_tab2> TYPE ll_tab2.

SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_tab1
  FROM tab1.

SELECT * INTO CORRESPONDING FIELDS OF TABLE lt_tab2
  FROM tab2.
 
LOOP AT lt_tab1 INTO ll_tab1.
  CLEAR ll_tab3.
  MOVE-CORRESPONDING ll_tab1 TO ll_tab3.
  READ TABLE lt_tab2 ASSIGNING <ll_tab2> WITH TABLE KEY field2 = ll_tab1-field2.
  IF sy-subrc = 0.
    MOVE-CORRESPONDING <ll_tab2> TO ll_tab3.
    IF <ll_tab2>-used = ''.
      <ll_tab2>-used = 'X'.
    ENDIF.
  ENDIF.
  APPEND ll_tab3 TO lt_tab3.
ENDLOOP.

CLEAR ll_tab3.
LOOP AT lt_tab2 INTO ll_tab2 WHERE used = ''.
  MOVE-CORRESPONDING ll_tab2 TO ll_tab3.
  APPEND ll_tab3 TO lt_tab3.
ENDLOOP.

_________________
Все в этом мире стоит под сомнением, над сомнением – только google...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB