Misanthropist
@Misanthropist
Web-developer

Есть ли возможность сделать нативный SELECT в PostgreSQL по полю int[]?

Есть 2 таблицы. В первой - список статей, во второй - список категорий. Одна статья может относится к нескольким категориям. Для этого в таблице со статьями есть поле типа int[] (массив) с ID категорий. Можно ли сделать выборку статей с названиями категорий простым SELECTOM? Или нужно заморочиться функциями?
  • Вопрос задан
  • 2389 просмотров
Пригласить эксперта
Ответы на вопрос 2
@krypt3r
Можно, типа SELECT * FROM table WHERE 17 = ANY(id)
Можно поставить индексы GIN.
Повнимательнее почитайте мануал, где описываются массивы. Там все есть
Ответ написан
Комментировать
Misanthropist
@Misanthropist Автор вопроса
Web-developer
При использовании
SELECT * FROM table WHERE 17 = ANY(id)
выдуются дублирующиеся результаты, а нужен один результат со всеми названиями категорий, id который есть в записи.

Про индексы - спасибо за наводку, сейчас почитаю.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы