|
|
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, над эти вариантом знающие люди уже поплакали) читай выше) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:26:02 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, может проще в 2 отдельных запроса? в первом получаешь дату и подставляешь ее во второй запрос. Код: java 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:28:43 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ну уж один раз хочу разобраться со сложным случаем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:30:23 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Вот так уже близко, но получаю только один результат (а всего должно быть 4) Код: java 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:36:37 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, Hibernate же пишет в лог запрос SQL и какие данные он подставил. Там не видно почему только 1? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:41:51 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, может из-за Long.valueOf(1) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 17:42:43 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Код: java 1. авторNote that support for multicolumn subqueries is not implemented until in Hibernate 4.0.0.CR5. Можно-ли всётаки сделать с criteria query в query? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:10:31 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Так ладно с criteria многого наверно не сделать.... Давайте с HQL, Помогите тогда с Код: java 1. 2. 3. 4. 5. 6. 7. Для начала хочу просто выбрать все healths. Получаю авторorg.hibernate.hql.ast.QuerySyntaxException: unexpected token: ON near line 1, column 30 [FROM health a JOIN patient b ON a.patientID = b.pat ientID JOIN Account c ON b.accountID = c.ID WHERE c.Password='password' AND c.Login='login' ORDER BY a.timestamp desc] P.S. Сами понимаете - сложно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:37:33 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, что то не пишет никто( может left join? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:48:26 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
rdm, и опять же как писал Blazkowicz нужно оперировать полями объекта в запросе HQL, а не столбцами таблицы. Код: vbnet 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:53:18 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Серьезно мои ответы не воспринимай) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:54:05 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
авторorg.hibernate.hql.ast.QuerySyntaxException: unexpected token: ON near line 1, column 36 [FROM patient b LEFT JOIN Account c ON b.accountID = c.ID WHERE c.Password='password' AND c.Login='login' ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 19:59:01 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Хотябы пациента по аккаунту как получить? Код: java 1. 2. 3. 4. 5. 6. авторorg.hibernate.hql.ast.QuerySyntaxException: unexpected token: ON near line 1, column 31 [FROM patient b JOIN Account c ON b.accountID = c.ID WHERE c.Password='password' AND c.Login='login' ] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:00:44 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, вобще параметры в запрос вставляются через setParameter(). Например Код: java 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:05:22 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
А с JOIN что делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:19:16 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, во-первых вместо "JOIN Account c" как я понимаю надо "b.account as c" соблюдая регистр. При это в классе patient должно быть поле account. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:43:43 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
тебе мне кажется гораздо быстрее и правильнее ответили, если бы ты привел пример классов и как они замаплены в БД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:45:14 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
rdmccoder, во-первых вместо "JOIN Account c" как я понимаю надо "left join b.account as c" соблюдая регистр. При это в классе patient должно быть поле account. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:46:05 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Вот так получилось Код: java 1. 2. 3. 4. 5. т.е. эта часть работает Далее пробую Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Получаю авторorg.hibernate.hql.ast.QuerySyntaxException: unexpected token: ( near line 1, column 53 [FROM lt.webmedia.eHealth.domain.Health a INNER JOIN (SELECT type, MAX(timestamp) AS MaxDateTime FROM a WHERE AND a.patient.account.login='test@mail.com' AND a.patient.account.password='aaaa' BY type) groupedttON a.type = groupedtt.type AND a.timestamp = groupedtt.MaxDateTimeWHERE a.patient.account.login='test@mail.com' AND a.pati ent.account.password='aaaa' ] Какие части у меня не сосуществуют HQL? Брал я с рабочего SQL Код: sql 1. P.S. Мне нужно выбрать все здоровья пациента с последними датами(по одной на параметр) имея логин и пароль(с account таблицы) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 20:53:31 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, попробуй SELECT type, MAX(timestamp) AS MaxDateTime FROM Health a ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:04:34 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
и еще ты order не забыл в подзапросе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:06:25 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
Вот так Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. авторorg.hibernate.hql.ast.QuerySyntaxException: unexpected token: SELECT near line 1, column 53 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:06:46 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
rdmи еще ты order не забыл в подзапросе? Не нужно, так как мне нужны все только последнии параметры одного пациента. Т.е. по одному параметру от каждого типа и чтобы каждый был с последней датой из своей группы (а группируются типу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:09:18 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoder, эх. Надо чтоб знающий человек ответил) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:14:14 |
|
||
|
SQL запрос в HQL/Сriteria
|
|||
|---|---|---|---|
|
#18+
ccoderrdmи еще ты order не забыл в подзапросе? Не нужно, так как мне нужны все только последнии параметры одного пациента. Т.е. по одному параметру от каждого типа и чтобы каждый был с последней датой из своей группы (а группируются типу) а group не забыл? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2012, 21:17:23 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37759577&tid=2131908]: |
0ms |
get settings: |
11ms |
get forum list: |
22ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
55ms |
get topic data: |
16ms |
get forum data: |
4ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 379ms |
| total: | 581ms |

| 0 / 0 |
