|
|
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
Всем привет. В постгресе без году неделя, поэтому спрашиваю. Соблазнился мыслью о разграничении прав доступа через массивы. К примеру: имеем таблицу прав, у нее несколько отнаследованных дочек. Также есть таблица групп, где помимо стандартного id и названия группы находится массив прав. Вот как все это выглядит: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Чтобы получить массив прав на заявки нужно выполнить: Код: plsql 1. Массив прав группы получаем так: Код: plsql 1. Но вот как получить массив общих элементов из 2 массивов ума не приложу. Такой вариант: Код: plsql 1. выведет t (true), но мне это не надо. Лучше всего получить массив id. А еще лучше даже не массив, а список доступных прав (name). Вот как это сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 00:15 |
|
||
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
Серджио, Массивы лепятся друг к другу оператором `||`, как строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 00:27 |
|
||
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
vyegorov, мне их склеивать не нужно вообще. К примеру есть массив прав для доступа к архиву ( чтение, удаление, поиск и т.д. ) и есть массив прав группы или пользователя ( чтение новостей, возможность отвечать на форуме и т.д. ). То есть в массиве группы права могут быть вообще любыми. Так вот: мне нужно найти в массиве прав группы или пользователя права, которые есть в правах архива и вывести их. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 00:35 |
|
||
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
Серджио, Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 09:01 |
|
||
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
Серджио, поправка Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 09:04 |
|
||
|
Найти общие элементы Массивов
|
|||
|---|---|---|---|
|
#18+
Серджио, Или поставьте http://www.postgresql.org/docs/9.5/interactive/intarray.html и используйте "int[] & int[] intersection of arrays" или select * from unnest(array1); intersect all select * from unnest(array2); -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.05.2016, 10:21 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=92&tid=1997257]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
44ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 319ms |

| 0 / 0 |
