Как получить все уникальные данные из одного столбца
У меня есть таблица, как показано ниже,
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);