/ / Unikajúci dvojbodka ":" v Hibernate / Postgres / JSON - json, hibernate, postgresql, unikajúci

Escaping colon ":" v Hibernate / Postgres / JSON - json, hibernácia, postgresql, únik

Snažím sa vytvoriť HQL dotaz, ktorý využíva možnosti postgresu json vyhľadávania.

V priamom SQL, nasledujúce funguje podľa očakávania:

sb.append("select...<blah>, regexp_split_to_table(fe.meta::json->>"elementName", ",") ...

Snažil som sa každú kombináciu uniknúť, že ":: json" môžem nájsť na webe.

sb.append("select...<blash>, regexp_split_to_table(fe.meta\:\:json->>"elementName", ",") ...

:\:
\::

použitím !:!: a potom pridaním úniku !

Bez ohľadu na kombinácie, budem buď získať neplatný dotaz, nie všetky pomenované parametre boli nastavené, alebo medzera nie je povolená po predpone parametra

Je tam nejaká iná metóda?

Akákoľvek pomoc veľmi ocenil!

odpovede:

4 pre odpoveď č. 1

x::json je len PostgreSQL špecifický spôsob odlievania x na json, nemusíte používať :: syntax, ak nechcete, alebo ak môžete "t, pretože niekto chce použiť dvojbodky pre pomenované parametre." Vždy môžete použiť obyčajný starý štandard cast miesto:

cast(fe.meta as json)->>"elementName"