Делайте NULLS ПЕРВЫМ при сортировке по возрастанию из PostgreSQL. Весенние данные JPAJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Делайте NULLS ПЕРВЫМ при сортировке по возрастанию из PostgreSQL. Весенние данные JPA

Сообщение Гость »


У меня проблема с сортировкой данных из PostgreSQL.

Я сортирую данные из БД, используя PagingAndSortingRepository. Код показан ниже:

Listorders = new ArrayList(); orders.add(Sort.Order.asc(s.getField())); Сортировка sort = Sort.by(заказы); Pageable pageSort = PageRequest.of(pageNumber,pageSize, sort); List результаты = репозиторий.findAll(pageSort); В результате я отсортировал данные, но данные со значениями NULL идут последними, хотя я предпочитаю, чтобы они были первыми.

Я бы хотел, чтобы NULL-значения шли первыми при сортировке по возрастанию и последними при сортировке по убыванию.

Но PostgreSQL по умолчанию помещает NULLS в конец при сортировке по возрастанию и в начало при сортировке по убыванию.

Я пытался использовать

new Sort.Order(Sort.Direction.ASC, s.getField(), Sort.NullHandling.NULLS_FIRST) но похоже, что свойство NULLS_FIRST игнорируется в сгенерированном запросе:

выберите сгенерированный псевдоним0 из таблицы как сгенерированныйAlias0 порядок по созданномуAlias0.targetField по возрастанию Как видите, о NULL ORDERING не упоминается.

Знаете ли вы другой способ решить мою проблему?

Обратите внимание, что я спрашиваю не о скрипте pg, а о том, как я могу решить проблему с помощью Java-кода.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»