我正在尝试构建一个使用postgress json搜索功能的HQL查询。
在直接SQL中,以下工作正常:
sb.append("select...<blah>, regexp_split_to_table(fe.meta::json->>'elementName', ',') ...
我已经尝试过逃避&#34; :: json&#34;我可以在网上找到。
sb.append("select...<blash>, regexp_split_to_table(fe.meta\\:\\:json->>'elementName', ',') ...
:\\:
\\::
使用!:!:
然后添加转义!
无论组合如何,我都会得到无效的查询,并未设置所有已命名的参数或参数前缀后不允许使用空格
还有其他方法吗?
任何帮助都非常感谢!
答案 0 :(得分:4)
x::json
只是PostgreSQL特定的将x
投射到json
的方式,如果你没有&#39,则不必使用::
语法; t想要或者如果你不想,因为有人想使用冒号作为命名参数。您可以随时使用普通旧标准cast
:
cast(fe.meta as json)->>'elementName'