|
|
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, делается простой paging не спрашивайте почему так. У нас руководство решило свой велосипед изобретать.. ))) Так вот, собственно вопрос. Можно ли как-то возможно ли как-то в одном JPQL запросе взять часть данных и получить их общее количество? Иначе придется один и тот же запрос делать 2 раза.. Обычный запрос. Дай мне тикеты которые соответствуют такому условию... Ну и paging работает сл образом. Соответственно клиенту нужно знать обще количество найденных элементов, чтоб отобразить количество страниц. Код: java 1. 2. 3. 4. 5. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:24 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_Так вот, собственно вопрос. Можно ли как-то возможно ли как-то в одном JPQL запросе взять часть данных и получить их общее количество? Иначе придется один и тот же запрос делать 2 раза.. Поиском пользоваться религия не позволяет? Уже несколько раз обсуждали. JPQL ничем это просто упрощенная версия SQL с парой ORM фич. Ваш вопрос только так же относится к SQL, как и к JPQL. Можно ли такое сделать на SQL? _webdev_Ну и paging работает сл образом. Соответственно клиенту нужно знать обще количество найденных элементов, чтоб отобразить количество страниц. Именно по этой причине все давно от этого отказались. Навигация по всем страницам пользователю нафиг не нужна. Нужно видеть последние данные. Нужно немного более старые. Подумайте над юзабилити. Страницы остались в прошлом десятилетии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:30 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_, Ну, и нет ничего страшного в двух запросах. И переиспользовать можно через Criteria API или другие билдеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:32 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПоиском пользоваться религия не позволяет? - Не понял к чему это, я же не холиварную тему по обсуждению JPQL создал. В моем понимании getResultList() - вернет список обьектов типа Ticket как туда прикрутить еще и count непонятно пока, поэтому и спросил. BlazkowiczИменно по этой причине все давно от этого отказались. Навигация по всем страницам пользователю нафиг не нужна. Нужно видеть последние данные. Нужно немного более старые. Подумайте над юзабилити. Страницы остались в прошлом десятилетии. - я с вами полностью согласен, такого же мнения. Но у людей которые это делают и у руководства - другое мнение... BlazkowiczНу, и нет ничего страшного в двух запросах. И переиспользовать можно через Criteria API или другие билдеры. - иногда есть, немного страдает перформенс, когда даных тысячи.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:49 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_иногда есть, немного страдает перформенс, когда даных тысячи.. Ерунда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:50 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_ В моем понимании getResultList() - вернет список обьектов типа Ticket как туда прикрутить еще и count непонятно пока, поэтому и спросил. http://docs.oracle.com/javaee/6/api/javax/persistence/criteria/CriteriaBuilder.html#count(javax.persistence.criteria.Expression) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 20:52 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz http://docs.oracle.com/javaee/6/api/javax/persistence/criteria/CriteriaBuilder.html#count(javax.persistence.criteria.Expression) - Понял, значитс нельзя так как я хочу. Спасибо за ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 21:07 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_, Ну, можно всякие ухищрения применить, или штуки специфичные для определённого сервера. Но, в целом, они никакого выигрыша не дают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 21:12 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНу, можно всякие ухищрения применить, или штуки специфичные для определённого сервера. Но, в целом, они никакого выигрыша не дают. - Понял, Вашего ответа достаточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2016, 21:15 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_ возможно ли как-то в одном JPQL запросе взять часть данных и получить их общее количество? Код: java 1. Спасибо! Если вас и вашу систему не пугают монструозные запросы, то Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 06:36 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
Может я и глупость напишу но... самое простое. Получили ResultList - получили данные. В классе, в котором получаем этот ResultList делаем переменную аля Integer c с геттерами и сеттерами и в этом же запросе после получения листа, берем его сайз и кладем в эту переменную. Далее пользуемся и данными и этой переменной, которая количество покажет, в других классах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 08:13 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
не в этом же запросе, а в этом же методе* ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 08:14 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
SQL2008SELECT t, (SELECT COUNT(t) FROM Ticket t WHERE ...) as COUNT_ALL FROM Ticket t WHERE ... это хороший вариант , когда записей не много, но когда их приличное количество - будут тормоза при каждом обращении, если считывается по кускам. зато плюс - оператианая инфа о количестве. как вариант - использование хранимых процедур с многожественным результсетом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 10:25 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
вадя, авторМожно ли как-то возможно ли как-то в одном JPQL запросе взять часть данных и получить их общее количество? мое мнение: 1. решить как брать часть данных - paging 2. общее количество знать не обязательно - поиск в google ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 11:54 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
am_sasa, ой это ТС ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 11:55 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_У нас руководство решило свой велосипед изобретать.. ))) это не значит, что вы лично не должны смотреть ГОТОВЫЕ решения. Что то вы не договариваете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 12:06 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_ - иногда есть, немного страдает перформенс, когда даных тысячи.. Когда данных тысячи, то послать упрощенный запрос с выброшенными внешними соединениями ?и, для JPQL - проекцией с одним count, гораздо проще и надежнее. Просто взять за правило - для кол-ва пишется отдельный запрос. А в getResultList() сколько реально записей засунуть и сколько вы будете ждать? При постраничном же выводе относительно быстро получите свои 50 первых записей. PS Аналогично было - там не тысячи, а местами сотни тысяч (вкладчики) строк - и тем не менее можно типа перелистать ВСЕХ по очереди, это при том что в строке часто десятки полей, часть вытаскивается довольно сложно (и дорого). Это менталитет такой у некоторых, но они - заказчики. Надцать лет назад работал (недолго) в одной ... конторе (ОМС - там записей миллионы), и при всем г-кодерстве там было соглашение выводить на" постранично" только ограниченное кол-во записей, типа 300 - больше всё равно никто листать не будет, кто хочет дальше - пусть уточняет критерии фильтра. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 12:45 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
SQL2008Если вас и вашу систему не пугают монструозные запросы, то - пасиб, как выше советовали - сделал как 2 запроса. NixicВ классе, в котором получаем этот ResultList делаем переменную аля Integer c с геттерами и сеттерами и в этом же запросе после получения листа, берем его сайз и кладем в эту переменную. - Код: java 1. - у меня так, поэтому мне кажется, предложеный вами вариант работать не будет. am_sasa2. общее количество знать не обязательно - поиск в google - а вот у нас PO считает по другому, и нужно делать так как он говорит. Petro123это не значит, что вы лично не должны смотреть ГОТОВЫЕ решения. Что то вы не договариваете. - немного не понял.. ))) Как это не договариваю. Новый архитектор решил, что будет круто, если мы все фреймворки из проекта выбросим и будем все делать ручками. Я лично не встречал такой функции в Query или CrieriaBuilder.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 18:13 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_, Не встречал? А счас моё сообщение ты как читаешь? Поиском по форуму хотя бы. Что в jsp, что спринге принципы одинаковы. Я как раз, с пагинацией кругом вижу. А ты нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 18:55 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
_webdev_ Новый архитектор решил, что будет круто, если мы все фреймворки из проекта выбросим и будем все делать ручками. Реально круто! Т.е. "дом строим, лепим свои кирпичи, куём гвозди и сами отливаем оконные стекла"? Сотни-тысячи человеко-часов тестирования отработанных фреймворков на помойку, будем сами ходить по свежим граблям??? Это конечно не моё дело, но гоните вы этого архитектора взашей! Хлебнёте вы с ним горя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 08:50 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
SQL2008Это конечно не моё дело, но гоните вы этого архитектора взашей! Хлебнёте вы с ним горя...хм, это реально круто, согласен полностью! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 09:40 |
|
||
|
Query возможно ли в одном запросе часть результатов и их общее количество?
|
|||
|---|---|---|---|
|
#18+
SQL2008Реально круто! Т.е. "дом строим, лепим свои кирпичи, куём гвозди и сами отливаем оконные стекла"? Сотни-тысячи человеко-часов тестирования отработанных фреймворков на помойку, будем сами ходить по свежим граблям??? Это конечно не моё дело, но гоните вы этого архитектора взашей! Хлебнёте вы с ним горя... - ))) У меня такое же мнение. Но тут где я работаю, часто принимаются "политические" решения. Біли жаркие споры и дискуссии.. Но.. Сейчас ищу новую работу, так как понимаю, что скоро будет хаос.. Та не, он уже помаленьку начинается.. Не хочу я тут этого горя хлебать. А да, это уже невозможно, так как уже год разработки и то что этот архитектор со своей командой наделал, и главное КАК - известно только ему. ))) SQL2008Т.е. "дом строим, лепим свои кирпичи, куём гвозди и сами отливаем оконные стекла"? - не, некоторые старые окна просто снимаем и переносим в новый дом, жуткое зрелище получается. )))) Все держится на подпорочках. )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2016, 10:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39358057&tid=2123427]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
101ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 463ms |

| 0 / 0 |
