Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Последовательная обработка строк RESULT SET / 8 сообщений из 8, страница 1 из 1
07.07.2006, 15:28
    #33838726
PACTAMAH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
Перманентные предикаты проникли мне в моск и занимаются там оптимизацией рекурсивного SQL. Помогите!

DB2 v 8.0
Задача:
Есть табличная функция getKeysByDate(DT DATE, ID INTEGER) которая возвращает некие ключи в виде таблицы KEYS (K INTEGER) за указанный день. Грубо говоря, скармливаешь функции ID города и дату, а она тебе ключи на этот день.
Например:
Код: plaintext
 select K from table(getKeysByDate(current date,  1 )) A 
вернет все ключи на сегодня для Москвы

Есть таблица CALENDAR(DT DATE) содержащая набор дней. Этот набор дат, в общем-то, разрывен и случаен.

Нужно получить конечную таблицу RESULT (DT DATE, K INTEGER) в которой для всех дат были бы прописаны все ключи.

HAVE A GOOD CREATION REALIZING
...
Рейтинг: 0 / 0
07.07.2006, 15:38
    #33838766
PACTAMAH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
RESULT (DT DATE, K INTEGER) должна быть сессионная, то есть это либо чейто резалт сет, либо времянка SESSION.RESULT. В общем, в этой задаче использование регулярных таблиц не допустимо.

HAVE A GOOD CREATION REALIZING
...
Рейтинг: 0 / 0
07.07.2006, 15:41
    #33838776
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
PACTAMAHЕсть таблица CALENDAR(DT DATE) содержащая набор дней. Этот набор дат, в общем-то, разрывен и случаен.
И как использовать этот каледарь?
Пример с данными из календаря можно?
...
Рейтинг: 0 / 0
07.07.2006, 15:49
    #33838809
PACTAMAH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
Код: plaintext
select DT from CALENDAR
вернет все дни, ключи по которым нужно получить. В этой таблице больше ничего нет. Я максимально упростил задачу. На самом деле эта таблица тоже является плодом обработки. Для чистоты, будем считать, что в ней ничего кроме интересующих нас дат.

HAVE A GOOD CREATION REALIZING
...
Рейтинг: 0 / 0
07.07.2006, 15:53
    #33838831
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
Декартово произведение?
Код: plaintext
1.
select c.DT, a.k
from CALENDAR с, table(getKeysByDate(current date,  1 )) A 
...
Рейтинг: 0 / 0
07.07.2006, 15:55
    #33838839
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
Или так?
Код: plaintext
1.
select c.DT, a.k
from CALENDAR с, table(getKeysByDate(с.dt,  1 )) A 
...
Рейтинг: 0 / 0
07.07.2006, 16:09
    #33838905
PACTAMAH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
Огромное спасибо!
Предикаты прошли, все работает. Я видать совсем заработался 8)

Даже не знаю как Вас отблагодорить. Правда...
...
Рейтинг: 0 / 0
07.07.2006, 16:15
    #33838933
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Последовательная обработка строк RESULT SET
называется декартово произведение))).... гы...
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Последовательная обработка строк RESULT SET / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]