Querydsl: рд╕реЗрд▓реНрдлрд╝рдЬреЙрдЗрди рдХреЗ рдХреНрд╡реЗрд░реА рдореЗрдВ рд╣реЛрдиреЗ рдкрд░ рд▓рд╛рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 25 рдЕрдкреНрд░реИрд▓ 2019  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: querydsl/querydsl

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕реНрд╡рдпрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рдЧрдпрд╛ рд╣реВрдВред
рдХреНрд╡реЗрд░реА рдлреИрдХреНрдЯрд░реА
.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 рдкрд░ рдЪреБрдиреЗрдВ

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдЯреНрд░рд╛рдИ рдХрд░реЗрдВ-
QCategory рд╢реНрд░реЗрдгреА = QCategory.category;
QCategory рдЙрдкрд╢реНрд░реЗрдгреА = рдирдпрд╛ QCategory ("рдЙрдк");
query.from(рд╢реНрд░реЗрдгреА)
рд▓реЗрдлреНрдЯрдЬреЙрдЗрди (рд╢реНрд░реЗрдгреАред рдЙрдкрд╢реНрд░реЗрдгреА, рдЙрдкрд╢реНрд░реЗрдгреА)
.where(category.type.equalsIgnoreCase("A"))
.fetchрдХрд╛рдЙрдВрдЯ ();

рдпрд╣ рдЙрдкрд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ рдФрд░ рдЬрд╣рд╛рдВ рдЦрдВрдб рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдХрд╛рдИ рдХреЛ рдЪреБрдиреЗрдЧрд╛, рди рдХрд┐ рдмрд╛рдПрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдПред

рд╕рднреА 4 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ рдПрдХ рдмрдЧ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдПрдХ рдмрдЧ рдирд╣реАрдВ рд╣реИред

рдЖрдкрдиреЗ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдХрд┐рдпрд╛? рдореБрдЭреЗ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рдЬрд╣рд╛рдВ рдХреНрд▓реЙрдЬ 'рд╕реЗ' рдЙрдкрдирд╛рдо рдХреЗ рдмрдЬрд╛рдп 'рд▓реЗрдлреНрдЯ рдЬреЙрдЗрди' рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдо рдЧрд▓рдд рд╣реИрдВред

рдореИрдВ рд▓рд╛ рд░рд╣рд╛ рд╣реВрдБ:
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рдХрд╛рдЙрдВрдЯ ();

рдпрд╣ рдЙрдкрд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ рдФрд░ рдЬрд╣рд╛рдВ рдЦрдВрдб рдореЗрдВ рдпрд╣ рдореБрдЦреНрдп рдЗрдХрд╛рдИ рдХреЛ рдЪреБрдиреЗрдЧрд╛, рди рдХрд┐ рдмрд╛рдПрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдПред

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХреНрдпреЛрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЪрд╛рд▓ рд╣реИред
рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!
:)

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

okihouse picture okihouse  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

intuitiveminds picture intuitiveminds  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдПрдирд╡рд░реНрд╕ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдкреАрдврд╝реА рдЬреЗрдкреАрдП/рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдФрд░ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдПрдирд╡рд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЬреЗрдкреАрдПрдПрдиреЛрдЯреЗрд╢рдирдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде рдбрд┐рдлреЙрд▓реНрдЯ рд░реЗрд╡рд┐рдЬрди рдПрдВрдЯрд░рд░реА рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИ
rjokelai picture rjokelai  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

timowest picture timowest  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

beamofsoul picture beamofsoul  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ