dentsusoken / iPLAss

Java-based open source low-code development platform for enterprise
https://iplass.org/
GNU Affero General Public License v3.0
68 stars 25 forks source link

プリミティブ型の多重度複数のプロパティに対するEQLのwhere句にて否定条件を指定した場合、適切にデータを絞り込めないことがある #1635

Closed HiguchiKiyoshi closed 1 month ago

HiguchiKiyoshi commented 1 month ago

概要

プリミティブ型の多重度複数のプロパティに対するEQLのwhere句にて否定条件を指定した場合、適切にデータを絞り込めないことがある。 null値を保持している場合に適切にSQLに展開されない。null値が設定されていることを考慮し、より自然な絞り込みとなるようにする。

再現手順

プリミティブ型の多重度複数のプロパティに対して、 ... where not(mulitiProp='A') などの条件指定した場合に、適切なレコードが返却されない。

HiguchiKiyoshi commented 1 month ago

(English)

Overview

When a negative condition is specified in the EQL where clause for a property with multiple multiplicities of primitive type, the data may not be properly narrowed down. When a null value is held, it is not properly expanded to SQL. This will allow for a more natural narrowing down, taking into account the null value being set.

Reproduction procedure

When a condition such as "... where not(mulitiProp='A')" is specified for a property with multiple multiplicities of primitive type, the appropriate records are not returned.