【问题标题】:How to call 'like any' PostgreSQL function in JPQL如何在 JPQL 中调用 'like any' PostgreSQL 函数
【发布时间】:2015-09-05 10:03:07
【问题描述】:

我有下一个问题: 我有名称列表,我想根据这些名称进行过滤。问题是我没有全名(因为我从 ui 接收它们),例如,我有这个 array= ['Joh', ' Michae']。

所以,我想根据这个数组进行过滤。

我在 PostgreSQL 中写了查询

select * from q_ob_person where name  like any (array['%Хомяченко%', '%Вартопуз%']);

我想问一下这个 JPQL 查询怎么写。

有没有像 JPQL 一样调用 postgresql 函数的选项?

【问题讨论】:

    标签: jpa


    【解决方案1】:

    JPA 2.1 允许使用任何 SQL 函数调用

    FUNCTION(sqlFuncName, sqlArgs)
    

    所以你可能会做类似的事情(注意从来没有像你提到的那样尝试过,只是玩弄它)

    FUNCTION("LIKE", FUNCTION("ANY", arrayField))
    

    显然,通过调用特定于特定 RDBMS 的 SQL 函数,您将失去数据库独立性(如果这很重要)。

    【讨论】:

    • 谢谢,我会努力寻找更多相关信息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-05
    • 2012-09-30
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多