Есть метод который из таблицы с предложениями о продаже машин выбирает все марки включая дубликаты. Как избавится от дубликатов а уровне запроса?
public List<String> getMarks() {
List<String> result;
final String hq = "select p.mark from Propose p";
try (final Session session = factory.get().openSession()) {
result = session.createQuery(hq, String.class).getResultList();
}
return result;
}
Вызываю: result.forEach(System.out::println);
и получаю все значения включая дубликаты. Можно конечно просто в Set
сразу перекинуть все значения но хотелось бы отсечь дубликаты на уровне запроса. Как это можно сделать?
Таблица:
CREATE TABLE IF NOT EXISTS propose (
id SERIAL NOT NULL ,
id_auhtor INTEGER NOT NULL ,
sold BOOLEAN NOT NULL ,
description TEXT NOT NULL ,
mark TEXT NOT NULL ,
model TEXT NOT NULL ,
image BYTEA,
PRIMARY KEY (id),
FOREIGN KEY (id_auhtor) REFERENCES users (id)
);
Попробуйте:
final String hq = "select DISTINCT p.mark from Propose p";
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Мне нужно закрыть окно, при нажатии на кнопку в другом окнеВот как я это попытался сделать, но выдает ошибку NullPointerException
Использую Window Builder в EclipseПри выполнении следующего кода получаю ошибку
Пишу программу которая бы создавала bat-ник для копирования файлов с одной папки в другуюИ, увы, столкнулся с проблемой когда надо вставить...