Rules Engine "One-To-Many Match" Dynamic Filter Expression improvements

Description

Currently a Left join with a subquery in combination with a where clause filter is used for this filter.This is not optimal as via the extra join the query result set is manipulated and not just filtered, requiring a distinct to get rid of duplicates.
Proposal: use exists filter instead.
Example:
Current:
select distinct
testplatform.identifier,
testplatform.name,
testplatform.description,
testplatform.id as id
from
`pobj_testplatform` `testplatform`
left join
`pobj_testplatform_configuration` `configurations`
on (`configurations`.`testplatform` = `testplatform`.`id`)
where (
( configurations.id in ('088140A4-E1F7-47C4-8045C78D3F91F6A9') )
)

Proposed change:
select
testplatform.identifier,
testplatform.name,
testplatform.description,
testplatform.id as id
from
`pobj_testplatform` `testplatform`
where (
exists (
select 1
from `pobj_testplatform_configuration` `configurations`
where configurations.testplatform = `testplatform`.id
and configurations.id in ('088140A4-E1F7-47C4-8045C78D3F91F6A9')
)
)

Your pinned fields
Click on the next to a field label to start pinning.

Assignee

Unassigned

Reporter

Jan Jannek