powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Из ORACLE в DB2: чем заменить count(*) over() в DB2 z/OS?
1 сообщений из 1, страница 1 из 1
Из ORACLE в DB2: чем заменить count(*) over() в DB2 z/OS?
    #36897226
s390
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть запрос в хранимой процедуре. Довольно большой и строится динамически.
В нем есть такая конструкция:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
                            CASE
                               WHEN(is_a999999(u.login_id) =  1  AND COUNT(*) OVER() >=  1 ) THEN  1   
                               WHEN COUNT(*) OVER() >  1  AND NOT EXISTS( SELECT  1  AS dummy
                                                                        FROM users ue
                                                                        WHERE Upper(ue.employee_id) = Upper(u.employee_id)
                                                                              AND is_a999999(u.login_id) =  1    
                                                                       ) THEN  1  
                               ELSE  0 
                            END true_row 
В LUW COUNT() OVER() есть, и проблем не было. Но вот при переезде в z/OS уперся в нее.
Пока использовал решение "в лоб" - сперва генерируется и выполняется запрос для получения COUNT,
потом полученное значение подставляется во второй запрос.
Но выглядит это крайне не красиво.
Может есть другое решение? Сам я его пока не нашел.

PS. Был бы он такой один, то я бы и плюнул. Но их довольно много.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Из ORACLE в DB2: чем заменить count(*) over() в DB2 z/OS?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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