如何在JPQL中使用LIKE ANY with array

时间:2016-02-26 01:52:11

标签: arrays postgresql jpa jpql

我正在使用jpql本机查询。

我有一个工作的postgresql查询,我需要在jpql中实现。

从sql_sent_sms中选择*,其中match_url LIKE any(数组['%ctid = 123%','%ctid = 231%']);

这将显示匹配列match_url与数组匹配值的所有行。

现在我想在jpa本机查询中使用它,但它在提供数组时给出了错误。

这就是我的尝试:

    List<String> arrctid =  Arrays.asList("%ctid=2141234%","%ctid=4be2a864-6e20-4686-b0f2-e3f432752c3d%");

Query query = em.createQuery("SELECT test.receiver  FROM Sql_test test"+"WHERE test.match_url like any (arrctid) and test.service=:sysuserId ");
query.setParameter("arrctid", arrctid );
query.setParameter("sysuserId", sysuserId);

我也试过

Query query = em.createQuery("SELECT test.receiver  FROM Sql_test test"+"WHERE test.match_url like any (:arrctid) and test.service=:sysuserId ");

Query query = em.createQuery("SELECT test.receiver  FROM Sql_test test"+"WHERE test.match_url like any :arrctid and test.service=:sysuserId ");

但没有任何效果。

任何人都可以告诉我如何使用任何运算符设置数组参数。

0 个答案:

没有答案