Выполните запрос «MEMBER OF» для полей карты «ElementCollection» в JP-QL (JPA 2.0)

Можно ли выполнить запрос «MEMBER OF» для ассоциативных массивов? Если да, то как выглядит синтаксис? Очевидный обходной путь - это собственный запрос, но он становится довольно беспорядочным со всеми соединениями и тому подобным. Я хотел бы проверить наличие объекта в наборе ключей карты, наборе значений или наборе записей. Может быть что-то вроде следующего:

SELECT p FROM Person p WHERE 'home' MEMBER OF p.phoneNumbers.keySet
SELECT p FROM Person p WHERE '867-5309' MEMBER OF p.phoneNumbers.values
SELECT p FROM Person p WHERE {'home' -> '867-5309'} MEMBER OF p.phoneNumbers

Код, не зависящий от провайдера, может быть слишком большим для запроса; Eclipselink поддерживает это?

Ответы на вопрос(3)

Ваш ответ на вопрос