powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Кол-во уникальных вхождений. SQL матчасть )
10 сообщений из 10, страница 1 из 1
Кол-во уникальных вхождений. SQL матчасть )
    #36540452
Фотография DimaU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поскажите, pls
Можно в одном запросе получить кол-во уникальных вхождений(значений) поля? как?
Например,
авторselect
f1, f2,..., f33
, f34 = ???
from t1

// значения поля f33 - 1 2 1 2 2 2 3
// поле f34 (кол-во уникальных вхождений в 33) должно вернуть 3
Сам запрос в реале большой и не хотелось бы менять код много...
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36540470
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select col1, count(distinct col1)
from tab1
group by col1
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36540702
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибся, distinct не нужен :)
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36541133
Фотография DimaU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ggg_oldselect col1, count(distinct col1)
from tab1
group by col1

группировка не подходит, поскольку получим результат типа (select f33, count(f33) as f34
from tab1 group by f33):
1 2
2 4
3 1
а нужно (... f33, f34 ... ) такой:
1 3
2 3
1 3
2 3
2 3
2 3
3 3
где 3-ка - кол-во уникальных значений (имеются 1,2,3)
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36541201
У тебя что за СУБД?
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36541318
Фотография DimaU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторУ тебя что за СУБД?
ASE 12.5
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36541432
BirdIV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaU,
Запутанно конечно объяснил

Код: plaintext
1.
2.
select col1, count(col1)
from tab1
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36541455
BirdIV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c distinct

select col1, count(distinct col1)
from tab1
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36543673
golsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя f34 - имеет одинаковое значение для всех строк запроса.
Можно конечно:
Код: plaintext
1.
2.
SELECT f33
     , (SELECT COUNT(DISTINCT F33) FROM t1) AS f34  
  FROM t1
но лучше расчитать f34 отдельным select'ом.
...
Рейтинг: 0 / 0
Кол-во уникальных вхождений. SQL матчасть )
    #36544607
Фотография DimaU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за варианты:

SELECT f33
, (SELECT COUNT(DISTINCT F33) FROM t1) AS f34
FROM t1
или
select col1, count(distinct col1)
from tab1

вложенный селект будет тяжелым поскольку в реале под from-ом много таблиц и условие where накрученные.

авторлучше расчитать f34 отдельным select'ом
Да, наверное это оптимальнее. Жаль придется много менять в коде...
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Кол-во уникальных вхождений. SQL матчасть )
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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