рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕реНрд╡рдпрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рдЧрдпрд╛ рд╣реВрдВред
рдХреНрд╡реЗрд░реА рдлреИрдХреНрдЯрд░реА
.select(queryBase.getColumns())
рд╕реЗ (рдЗрдХрд╛рдИрдкрде)
.leftJoin(QTodoEntity.todoEntity.parentLocation, QTodoEntity.todoEntity)
.leftJoin(QTodoEntity.locationEntity.country, QCountryEntity.countryEntity)
.рдЬрд╣рд╛рдВ (queryBase.getFilters ())
.orderBy (queryBase.getOrderBy ())
рдСрдлрд╕реЗрдЯ (queryBase.getOffset ())
рд╕реАрдорд╛ (queryBase.getLimit ())
редрд▓рд╛рдирд╛()
редрдзрд╛рд░рд╛()
.map(queryBase::mapRow)
рд╕рдВрдЧреНрд░рд╣ (рдХрд▓реЗрдХреНрдЯрд░.toList ());
QTodoEntity рдХреЗ рдЙрдкрдирд╛рдо рдмрд╛рдИрдВ рдУрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдкрд░ рдХреНрд╡реЗрд░реА рдореЗрдВ рд╣рд░ рдЬрдЧрд╣ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдЗрд╕реЗ рдЙрд╕ рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╕реЗ рдЪрдпрди рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдХреНрд╡реЗрд░реА рджрд┐рдЦрддреА рд╣реИ
todo1.id, todo1.name, todo1.custom, todo1.selfChild to Todo todoOnSelect рдмрд╛рдПрдВ рдмрд╛рд╣рд░реА todo todo1 todoOnSelect.selfChild=todo1.id рдкрд░ рдЪреБрдиреЗрдВ
рд▓реЗрдХрд┐рди рдХреНрд╡реЗрд░реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП -
todoOnSelect.id, todoOnSelect.name, todoOnSelect.custom, todoOnSelect.selfChild to Todo todoOnSelect рдмрд╛рдПрдВ рдмрд╛рд╣рд░реА todo todo1 todoOnSelect.selfChild=todo1.id рдкрд░ рдЪреБрдиреЗрдВ
рдпрд╣ рдПрдХ рдмрдЧ рдирд╣реАрдВ рд╣реИред
рдпрд╣ рдПрдХ рдмрдЧ рдирд╣реАрдВ рд╣реИред
рдЖрдкрдиреЗ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдХрд┐рдпрд╛? рдореБрдЭреЗ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдЬрд╣рд╛рдВ рдХреНрд▓реЙрдЬ 'рд╕реЗ' рдЙрдкрдирд╛рдо рдХреЗ рдмрдЬрд╛рдп 'рд▓реЗрдлреНрдЯ рдЬреЙрдЗрди' рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рдЧрд▓рдд рд╣реИрдВред
рдореИрдВ рд▓рд╛ рд░рд╣рд╛ рд╣реВрдБ:
select count(sub.id) from category c
left join category sub on c.id = sub.id
where sub.type='A'
рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
select count(c.id) from category c
left join category sub on c.id = sub.id
where c.type='A'
рдпрд╣рд╛рдВ рдХреНрд╡реЗрд░реА рдбреАрдПрд╕рдПрд▓ рд╣реИ:
QCategory category = QCategory.category;
query.from(category)
.leftJoin(category.subcategory, QCategory.category)
.where(category.type.equalsIgnoreCase("A"))
.fetchCount();
рдзрдиреНрдпрд╡рд╛рдж
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдЯреНрд░рд╛рдИ рдХрд░реЗрдВ-
QCategory рд╢реНрд░реЗрдгреА = QCategory.category;
QCategory рдЙрдкрд╢реНрд░реЗрдгреА = рдирдпрд╛ QCategory ("рдЙрдк");
query.from(рд╢реНрд░реЗрдгреА)
рд▓реЗрдлреНрдЯрдЬреЙрдЗрди (рд╢реНрд░реЗрдгреАред рдЙрдкрд╢реНрд░реЗрдгреА, рдЙрдкрд╢реНрд░реЗрдгреА)
.where(category.type.equalsIgnoreCase("A"))
.fetchрдХрд╛рдЙрдВрдЯ ();
рдпрд╣ рдЙрдкрд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ рдФрд░ рдЬрд╣рд╛рдВ рдЦрдВрдб рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдХрд╛рдИ рдХреЛ рдЪреБрдиреЗрдЧрд╛, рди рдХрд┐ рдмрд╛рдПрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдПред
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдЯреНрд░рд╛рдИ рдХрд░реЗрдВ-
QCategory рд╢реНрд░реЗрдгреА = QCategory.category;
QCategory рдЙрдкрд╢реНрд░реЗрдгреА = рдирдпрд╛ QCategory ("рдЙрдк");
query.from(рд╢реНрд░реЗрдгреА)
рд▓реЗрдлреНрдЯрдЬреЙрдЗрди (рд╢реНрд░реЗрдгреАред рдЙрдкрд╢реНрд░реЗрдгреА, рдЙрдкрд╢реНрд░реЗрдгреА)
.where(category.type.equalsIgnoreCase("A"))
.fetchрдХрд╛рдЙрдВрдЯ ();рдпрд╣ рдЙрдкрд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ рдФрд░ рдЬрд╣рд╛рдВ рдЦрдВрдб рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдХрд╛рдИ рдХреЛ рдЪреБрдиреЗрдЧрд╛, рди рдХрд┐ рдмрд╛рдПрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдПред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХреНрдпреЛрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЪрд╛рд▓ рд╣реИред
рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!
:)
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдЯреНрд░рд╛рдИ рдХрд░реЗрдВ-
QCategory рд╢реНрд░реЗрдгреА = QCategory.category;
QCategory рдЙрдкрд╢реНрд░реЗрдгреА = рдирдпрд╛ QCategory ("рдЙрдк");
query.from(рд╢реНрд░реЗрдгреА)
рд▓реЗрдлреНрдЯрдЬреЙрдЗрди (рд╢реНрд░реЗрдгреАред рдЙрдкрд╢реНрд░реЗрдгреА, рдЙрдкрд╢реНрд░реЗрдгреА)
.where(category.type.equalsIgnoreCase("A"))
.fetchрдХрд╛рдЙрдВрдЯ ();
рдпрд╣ рдЙрдкрд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ рдФрд░ рдЬрд╣рд╛рдВ рдЦрдВрдб рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдХрд╛рдИ рдХреЛ рдЪреБрдиреЗрдЧрд╛, рди рдХрд┐ рдмрд╛рдПрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдПред