Текущее время: Вс, июл 20 2025, 19:29

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Объединение таблиц
СообщениеДобавлено: Ср, июл 11 2012, 10:29 
Специалист
Специалист

Зарегистрирован:
Пн, июн 04 2012, 10:31
Сообщения: 125
Добрый день, коллеги.
Как правильнее реализовать алгоритм объединения внутренних таблиц в одну?
Есть несколько внутренних таблиц с одинаковыми ключевыми полям, к примеру A и B:
A-B-C, A-B-D-E, A-B-F-G

Как выбрать данные в одну внутреннюю таблицу
A-B-C-D-E-F-G ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Ср, июл 11 2012, 13:27 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
С помощью операторов LOOP и READ TABLE

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Ср, июл 11 2012, 13:37 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, янв 30 2007, 10:59
Сообщения: 61
Для быстрой работы read желательно иметь sorted или hashed таблицы.

_________________
Блаженны прыгающие, ибо они допрыгаются.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Ср, июл 11 2012, 15:57 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
SMak написал(а):
Для быстрой работы read желательно иметь sorted или hashed таблицы.

Достаточно отсортировать по нужным полям и использовать BINARY SEARCH.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Ср, июл 11 2012, 23:25 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Если записей не очень много, можно не париться - свалить все в одну кучу, отсортировать и удалить дубликаты.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Чт, июл 12 2012, 09:27 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, янв 30 2007, 10:59
Сообщения: 61
QValD написал(а):
Есть несколько внутренних таблиц с одинаковыми ключевыми полям, к примеру A и B:
A-B-C, A-B-D-E, A-B-F-G

Удав написал(а):
Достаточно отсортировать по нужным полям и использовать BINARY SEARCH.

Если в этих нескольких таблицах не обязательно записи с одинаковыми ключевыми полями (типа A1-B1-C1, A2-B2-C1 и A1-B1-D1-E1, A3-B3-D3-E3), то более оптимальный вариант - сортированная суммарная таблица, в которой выполнять READ и INSERT по всем исходным таблицам.

_________________
Блаженны прыгающие, ибо они допрыгаются.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Чт, июл 12 2012, 10:21 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 18 2008, 10:40
Сообщения: 342
Откуда: Пермь
Пол: Мужской
С точки зрения оптимизации самый оптимальный метод - тот что используется в сортировке слиянием
http://ru.wikipedia.org/wiki/Сортировка_слиянием, см. функцию merge
Хотя для небольших объемов данных нет смысла с этим заморачиваться, read table или loop тоже работают достаточно быстро в случае отсортированной таблицы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Чт, июл 12 2012, 10:37 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
zsap +1 :D
SMak написал(а):
более оптимальный вариант - сортированная суммарная таблица, в которой выполнять READ и INSERT по всем исходным таблицам.

Чем этот вариант "более оптимальный"? Посмотрите документик по оптимизации :wink:

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объединение таблиц
СообщениеДобавлено: Чт, июл 12 2012, 11:46 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, янв 30 2007, 10:59
Сообщения: 61
Удав написал(а):
Чем этот вариант "более оптимальный"? Посмотрите документик по оптимизации :wink:

Согласен.

_________________
Блаженны прыгающие, ибо они допрыгаются.


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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