powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Суммарное количество неповторяющихся элементов массива
15 сообщений из 15, страница 1 из 1
Суммарное количество неповторяющихся элементов массива
    #35489456
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, пожалуйста.

К примеру, есть таблица

a*****|*******b
______|________________
1-------|-------вдлаолва
2-------|--------ывдалоылвдоа
1-------|--------121212
2-------|--------ыфдалоывдлоа


Нужно посчитать суммарное количество всех неповторяющихся элементов в столбце 'a', в даном случе оно = 2.

это:
http://www.sai.msu.su/~megera/wiki/intarray
видел... но не совсем понял, что как это подключить, да и вообще желательно сделать это стандартными инструментами.... Покажите дорогу, пожалуйста..

Заранее благодарен...
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35489485
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select count(distinct a) from t
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35489499
chAlx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только я хотел ткнуть носом в доку про группировку .. Кстати, с GROUP BY план скорее всего будет идентичным.
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35489625
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо. Очень помогло...

Покажите, пожалуйста, пример, в котором идет выборка неповторяющихся значений из одного из столбцов таблицы в массив.
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35489749
tadmin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большой Синий КитБольшое спасибо. Очень помогло...
Покажите, пожалуйста, пример, в котором идет выборка неповторяющихся значений из одного из столбцов таблицы в массив.
Ну вы и ленивые там, на берегу Днепра.
Наверное и галушки телепортируете, как в известном произведении?

Код: plaintext
select ARRAY(select distinct A from table)
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35489757
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:) Да нет, в общем-то... Если честно, то решаю в это время другие задачи, без которых ответ на этот мой вопрос не нужен...
В SQL я очень слаб, поэтому и спрашивал.. :)

Большое Вам спасибо! :)
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490060
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скажите, пожалуйста, еще одну вещь..
Есть 1-й массив неповторяющихся значений.
Есть 2-й массив неповторяюихся значений.

В первом массиве могут быть значения, дублирующие значения во втором и наборот.
Есть ли оператор, способ объедиения их в один с неповторяющимся значениями?

Заранее благодарен... :) Вот ищу - ищу, но никак не могу найти способ....:(
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490112
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большой Синий КитЕсть 1-й массив неповторяющихся значений.
Есть 2-й массив неповторяюихся значений.

Есть ли оператор, способ объедиения их в один с неповторяющимся значениями?Сформулируйте изначальную задачу. Может удастся её решить без массивов. Имхо, они не нативны для SQL.
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490194
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за отзывы.!
Хорошо... :)

К примеру, есть определенное количество персон, у каждой из них свой уникальный идентификатор.

Определенный действия, совершаемые над этими персонами, заносятся в разные таблицы, в каждую из которых записывается идентификатор персоны.

Нужно провести поиск по всем таблицам с определенным критерием поиска, и затем сформировать массив с неповторяющимися идентификаторами, чтобы затем получить длину этого массива - таким образом получим количество персон по заданным критериям поиска....

Результат будет отображатся в ява-приложении. Но получить этот результат хотелось бы только средстами SQL, потому что эти критерии поиска оформлены в xml, его обработка уже создана, и остается только вписать SQL-запросы, соответстующие каждому конкретному элементу.....
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490207
chAlx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. в ответе должно быть просто число? Это какой-же язык приучает к использованию для этого массивов.. :))
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490217
tadmin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большой Синий Кит
Определенный действия, совершаемые над этими персонами, заносятся в разные таблицы, в каждую из которых записывается идентификатор персоны.
По-моему, тут заложен источник дальнейших проблем.
Чтобы эффективно решать задачу на SQL, лучше иметь общую таблицу.
Код: plaintext
1.
2.
3.
4.
create table PersonActions(
ActionID int,
PersonID int,
ActionTime,
...)
Вместе со справочником персон и действий это даст возможность любых манипуляций на SQL

Это не запрет на использование разных таблиц предметной области, если в них есть необходимость.
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490220
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо, а каким образом тогда мне сделать выборку из нескольких таблиц описанным выше образом?
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490227
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большой Синий КитК примеру, есть определенное количество персон, у каждой из них свой уникальный идентификатор.пусть есть таблица persons с полями (id, name,..)

Большой Синий КитОпределенный действия, совершаемые над этими персонами, заносятся в разные таблицы, в каждую из которых записывается идентификатор персоны.person_actions с полями (action_id, person_id,..) и person_operations с полями (operation_id, person_id,..)

Большой Синий КитНужно провести поиск по всем таблицам с определенным критерием поиска, и затем сформировать массив с неповторяющимися идентификаторами, чтобы затем получить длину этого массива - таким образом получим количество персон по заданным критериям поиска....select count(*) from ( select person_id from person_actions where ... union select person_id from person_operations where ... ) as a;
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490229
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadmin
Я с Вами абсолютно согласен, но понимаете, приложение уже создано, я дорабатываю, добавляю новые функции, поэтому приходится изворачиваться...
...
Рейтинг: 0 / 0
Суммарное количество неповторяющихся элементов массива
    #35490264
Большой Синий Кит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LeXa NalBat Большой Синий КитК примеру, есть определенное количество персон, у каждой из них свой уникальный идентификатор.пусть есть таблица persons с полями (id, name,..)

Большой Синий КитОпределенный действия, совершаемые над этими персонами, заносятся в разные таблицы, в каждую из которых записывается идентификатор персоны.person_actions с полями (action_id, person_id,..) и person_operations с полями (operation_id, person_id,..)

Большой Синий КитНужно провести поиск по всем таблицам с определенным критерием поиска, и затем сформировать массив с неповторяющимися идентификаторами, чтобы затем получить длину этого массива - таким образом получим количество персон по заданным критериям поиска....select count(*) from ( select person_id from person_actions where ... union select person_id from person_operations where ... ) as a;

Огромное Вам спасибо! :) Надо учить SQL... а то знаний мало....
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Суммарное количество неповторяющихся элементов массива
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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