我正在使用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 ");
但没有任何效果。
任何人都可以告诉我如何使用任何运算符设置数组参数。