|
|
|
Hibernate querry
|
|||
|---|---|---|---|
|
#18+
Всем привет! Mapped classes - tables: public class BaselineImpl ( private Integer baselinePk; // mandatory private java.sql.Date fromDateTime; // mandatory private java.sql.Date toDateTime; // mandatory } public class TaskImpl implements Task, Cloneable { private Integer taskPk; // taskPk is mandatory private Integer sourceSystemFk; // sourceSystemFk is mandatory private Date creationDateTime; } public class BaselinedTaskImpl implements BaselinedTask, Cloneable { private Integer baselinedTaskPk; // baselinedTaskPk is mandatory private Integer taskFk; private Integer fromBaselineFk; private Integer toBaselineFk; private Integer primaryPlanFk; // just planFk private String sourceReferenceFk; // sourceReference is mandatory private String name; // name is mandatory } public class PlanTaskRelationImpl implements PlanTaskRelation, Cloneable { private Integer planTaskRelationPk; // planTaskRelationPk is mandatory private Integer planFk; private Integer parentTaskFk; // can be null private Integer childTaskFk; // mandatory private Integer fromBaselineFk; private Integer toBaselineFk; private String treeNodeHash; // treeNodeHash is mandatory } Все это дело замаплено в Хибер, но замаплено не очень скажем так хорошо, как вы заметили нет маппингов между таблицами (все делается по ключам - как вы видите они все Integer) Решение мягко говоря не самое, но как есть. Задача: выбрать PlanTaskRelation (PTR), BaselinedTask (BT), Task (T) указав: planPk, baselinePk, sourcesystemPk, такие чтоб: PTR содержал в поле childTaskFk ссылку на T, BT содержал в поле taskFk ссылку на T, PTR & BT были бы внутри указанного Baseline`a (Bactive), по датам from-to, ниже виден кусочек запроса: " AND Bactive.fromDateTime <= PTR_to.toDateTime " + " AND Bactive.toDateTime > PTR_Bfrom.fromDateTime " + " AND BT.fromBaselineFk = PTR_Bfrom.baselinePk " + " AND BT.toBaselineFk = PTR_Bto.baselinePk " у меня это всё безобразие просто связывается по датам и Pk, работает ДОЛГО! Вопрос: варианты оптимизации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2006, 19:19:02 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=689&tid=2147779]: |
0ms |
get settings: |
10ms |
get forum list: |
23ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
21ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 340ms |

| 0 / 0 |
