Re: array_except -- Find elements that are not common to both arrays
В списке pgsql-performance по дате отправления:
| От | Gavin Flower |
|---|---|
| Тема | Re: array_except -- Find elements that are not common to both arrays |
| Дата | |
| Msg-id | 4E8AB2D7.2010901@archidevsys.co.nz обсуждение |
| Ответ на | Re: array_except -- Find elements that are not common to both arrays (Vitalii Tymchyshyn <tivv00@gmail.com>) |
| Ответы |
Re: array_except -- Find elements that are not common to
both arrays
|
| Список | pgsql-performance |
On 01/10/11 01:23, Vitalii Tymchyshyn wrote: > Since you are using except and not except all, you are not looking at > arrays with duplicates. > For this case next function what the fastest for me: > > create or replace function array_except2(anyarray,anyarray) returns > anyarray as $$ > select ARRAY( > ( > select r.elements > from ( > (select 1,unnest($1)) > union all > (select 2,unnest($2)) > ) as r (arr, elements) > group by 1 > having min(arr)=max(arr) > )) > $$ language sql strict immutable; > > Best regards, Vitalii Tymchyshyn > Very neat! I could see that this function could trivially be modified to handle 3 arrays. QUESTION: Could this be modified to take an arbitrary number of arrays?
В списке pgsql-performance по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера