powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Подскажите новичку
5 сообщений из 5, страница 1 из 1
Подскажите новичку
    #38375315
Mikhail Bel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задание:
Найдите самое распространенное имя таблицы (см. SYSIBM.SYSTABLES)
Сделал так:
Код: sql
1.
2.
-- Выдаем счетчик и название таблицы, группируя по имени и сортируя по убыванию
select count(name), name from sysibm.systables group by name order by 1 desc;


Получаю список таблиц и частот. Но надо выдать только одно имя, самое частое (первое).
Уже мозг свернул, не выходит...
...
Рейтинг: 0 / 0
Подскажите новичку
    #38375319
fetch first N rows only
...
Рейтинг: 0 / 0
Подскажите новичку
    #38375597
Mikhail Bel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх,

Спасибо. А на чистом SQL можно извернуться?
...
Рейтинг: 0 / 0
Подскажите новичку
    #38375668
Mikhail Bel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Угу, можно извернуться.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
-- Запрос внутри where выбирает все счетчики по группам, затем максимальный
-- из них. Основной запрос снова выбирает все счетчики по группам и сравнивает с тем,
-- где совпадает с максимальным.
select * from
  (select count(name) as CTR, name from sysibm.systables group by name) x1
where
  x1.ctr =
  ( select max(x.ctr) from (select count(name) as CTR, name from sysibm.systables group by name) x );
...
Рейтинг: 0 / 0
Подскажите новичку
    #38376230
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mikhail Bel,

Вообще говоря, с точки зрения классической реляционной модели сам вопрос поставлен некорректно/неполно.

Если несколько имён будут иметь одинаковую частотность, будет возвращено несколько строк.
"Возьми любую из них" в классическом SQL'е не предусмотрено, но, конечно, можно сделать с помощью fetc first 1 row only или OLAP функций.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Подскажите новичку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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