|
Модераторы: LSD |
|
polin11 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 123 Регистрация: 6.6.2015 Репутация: нет Всего: нет |
Использую Postgresql
1) Есть удобная операция конкатенация массива ||, но при такой операции могут быть будут элементов например array[1,2,3] || array[1,4] -> array[1,2,3,1,4] Вопрос как объединить 2 массива при этом убрать дубли элементов? 2) Если ли операция или функция убрать из массива элементы другого массива, то есть array[1,2,3] - array[1,4] -> array[2,3]? |
|||
|
||||
RubyLudwigValentin |
|
|||
magister wandal Профиль Группа: Участник Сообщений: 16 Регистрация: 4.3.2023 Где: Rostov-on-Don Репутация: нет Всего: нет |
Postgres уже объектная база данных. Массивы в базе - это не стандартный SQL.
Но, возможно, можно написать хранимую процедуру, которая будет убирать дубли из вашего массива. |
|||
|
||||
Akina |
|
||||
Советчик Профиль Группа: Модератор Сообщений: 20570 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 3 Всего: 453 |
polin11,
Задача очевидно недоопределена. С точки зрения Postgre два массива с одинаковым набором элементов, но различающимся их порядком - различны. То есть следует более точно описывать задачу - в зависимости от дополнительных условий финальное решение будет различным.
Нет. UNNEST - EXCEPT - AGGREGATE. Или иное решение подобного толка. Добавлено через 1 минуту и 28 секунд Нет такого термина. А если имеется в виду объектно-ориентированная - то это утверждение очевидно ложно.
Из пушки по воробьям.. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
||||
|
|||||
RubyLudwigValentin |
|
||||
magister wandal Профиль Группа: Участник Сообщений: 16 Регистрация: 4.3.2023 Где: Rostov-on-Don Репутация: нет Всего: нет |
ОК, уточню, база данных SQL, но с объектами. Массив - это объектное расширение.
А где вложенный цикл писать будете? Процедура типа функция. На входе - массив с повторениями, на выходе - уже без. Можно дополнительно отсортировать массив. Это сообщение отредактировал(а) RubyLudwigValentin - 6.3.2023, 03:14 |
||||
|
|||||
Akina |
|
|||
Советчик Профиль Группа: Модератор Сообщений: 20570 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 3 Всего: 453 |
Вообще не буду его писать, всё сделаю в запросе. В крайнем случае есть CTE. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
RubyLudwigValentin |
|
|||
magister wandal Профиль Группа: Участник Сообщений: 16 Регистрация: 4.3.2023 Где: Rostov-on-Don Репутация: нет Всего: нет |
||||
|
||||
Akina |
|
|||
Советчик Профиль Группа: Модератор Сообщений: 20570 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 3 Всего: 453 |
RubyLudwigValentin, я ж выше всё рассказал.
Что ещё нужно-то? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PostgreSQL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |