powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / вопрос про WHERE в селекте на zOS
5 сообщений из 5, страница 1 из 1
вопрос про WHERE в селекте на zOS
    #35258441
Evclid79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет.
Необходимо сделать выборку из таблицы по парам значений.
Например все работает если запрос написать в простейшем виде:
select *
from syscat.tables
where
tabschema = 'S1' AND tabname = 'TAB1'
OR tabschema = 'S2' AND tabname = 'TAB2'
...
OR tabschema = 'SN' AND tabname = 'TABN'

На LUW есть замечательная конструкция которая упрощает этот громоздкий синтаксис в следующий:
select *
from syscat.tables
where (tabschema, tabname) in (values
('S1', 'TAB1'),
('S2', 'TAB2'),
...
('SN', 'TABN')
);

Как сделать так же на zOS?
...
Рейтинг: 0 / 0
вопрос про WHERE в селекте на zOS
    #35259564
Roman Pankov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, что-то типа:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
with
  T1(F1, F2) as
  (
    select 'S1', 'TAB1' from SYSIBM.SYSDUMMY1 union
    select 'S2', 'TAB2' from SYSIBM.SYSDUMMY1 union
    ...
    select 'SN', 'TABN' from SYSIBM.SYSDUMMY1
  )
select *
from SYSCAT.TABLES
where
  TABSCHEMA || '.' || TABNAME in (select F1 || '.' || F2 from T1)

?
...
Рейтинг: 0 / 0
вопрос про WHERE в селекте на zOS
    #35259585
Evclid79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хе... Я думал как сделать запрос короче, а не наоборот... На LUW есть вариант, почему бы ему не быть и на zOS?.. Наверное, действительно, нету... Ну бог с ним...
...
Рейтинг: 0 / 0
вопрос про WHERE в селекте на zOS
    #35259633
Roman Pankov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На OS/400 вариант с values тоже не прокатывает, это первое, на что я в OS/400 наступил. :) Приходилось извращаться с with.

DB2/LUW и DB2/400 и роднит разве что префикс 'DB2'. Думается, что и с DB2/zOS то же самое...
...
Рейтинг: 0 / 0
вопрос про WHERE в селекте на zOS
    #35259682
Evclid79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще странно. Это ж обычный IN только вместо selecta перечисление пар. ZOS подороже будет чем LUW а такой ерунды не умеет. это не гуд. Может у них это из объективных соображений, но что-то я таких не вижу...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / вопрос про WHERE в селекте на zOS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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