JPA: @NamedQuery

Allgemeines zu PostgreSQL.
Antworten
janpaet
Neuer Benutzer
Beiträge: 5
Registriert: Fr 25. Mär 2016, 20:01

JPA: @NamedQuery

Beitrag von janpaet » Mi 1. Feb 2017, 21:44

Hallo zusammen,
weiß jemand, ob und wenn ja wie ich die Postgres-Funktion split_part() in in einer JPA-@NamedQuery verwenden kann?
Bzw. ein Tip, wo ich es nachlesen könnte würde mir auch schon weiter helfen.

Folgendes Bsp funktioniert nicht:
select e.property_1 from Entity e GROUP BY split_part(e.property_2, 'xyz', 2)

Mit einer vorherigen Registrierung im PostgreSQL9Dialect
registerFunction("split_part", new StandardSQLFunction("split_part", StandardBasicTypes.STRING));

funktioniert es ebenfalls nicht:
select e.property_1 from Entity e GROUP BY function('split_part', e.property_2, 'xzy', 2)

Ich erhalten dann folgende Exceptions:
- antlr.NoViableAltException: unexpected token: e
...
- org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: e
was wohl nichts anderes bedeutet, als dass die Angabe der Entity-Property e.property_2 in der Funktion nicht korrekt ist.

Bei einer @NamedNativeQuery ist es kein Problem.

Vielen Dank und Grüße
Jan

Antworten