Как получить все уникальные данные из одного столбца

У меня есть таблица, как показано ниже,

ID value
1  test
2  test
3  trouble
4  trouble
5  test
6  ok
5  trouble

Этот столбец значений имеет три жанра test trouble ok

Теперь я хочу получить уникальный массив следующего вида ['test','trouble','ok'] (можно в любом порядке)

Как я могу это сделать?

Предполагается, что вы используете Django, поскольку вопрос помечен тегом Django, это очень легко сделать.

models.py

class Entry(models.Model):
    value = models.CharField(max_length=100) 

views.py

unique_values = Entry.objects.values_list('value', flat=True).distinct()
unique_values_list = list(unique_values)

Чтобы получить уникальные значения из столбца value в таблице, можно использовать ключевое слово DISTINCT в SQL-запросе. Если вы хотите получить результат в виде массива, можно использовать функции массивов PostgreSQL.

Вот как вы можете это сделать:

SELECT ARRAY(SELECT DISTINCT value FROM your_table_name);

Этот запрос вернет массив уникальных значений из столбца value.

Если вы хотите получить результат в определенном порядке (например, отсортированный по алфавиту), вы можете добавить предложение ORDER BY:

SELECT ARRAY(SELECT DISTINCT value FROM your_table_name ORDER BY value);
Вернуться на верх