Sql 如何在存储库查询中使用任何值

Sql 如何在存储库查询中使用任何值,sql,spring,spring-data-jpa,Sql,Spring,Spring Data Jpa,我正在尝试创建如下查询: SELECT *FROM user WHERE name = ANY (VALUES ('Name1'), ('Name2') ...) 有人能帮助我理解如何在JPA存储库中将其实现为native@Query吗 @Query(value = "SELECT u FROM User u where u.name = ANY **.....**", native = true) User findUsersByName(List<String> names)

我正在尝试创建如下查询:

SELECT *FROM user WHERE name = ANY (VALUES ('Name1'), ('Name2') ...)
有人能帮助我理解如何在JPA存储库中将其实现为native@Query吗

@Query(value = "SELECT u FROM User u where u.name = ANY **.....**", native = true) 
User findUsersByName(List<String> names);
@Query(value=“从用户u中选择u,其中u.name=ANY**….**”,native=true)
用户FindUserByName(列表名称);

现在我找不到将名称设置为值('Name1')、('Name2')…

的解决方案,因为您正在使用equals运算符比较这些值
=
,我宁愿将我的SQL改为
。。如果u.name in:values
,那么就可以很容易地分配一个参数。@mndeveci,问题中描述的带有值的变量更有效。我理解,但您能否更详细地解释一下,在这种情况下,中的
之间的区别是什么?@mndeveci,我正在尝试改进请求,我在这里找到了具有值的解决方案,您可以在本文中详细了解请求速度的改进。在测试了来自psql控制台的请求后,我发现值请求速度更快。现在我试图在存储库中使用它,但找不到解决方案:(哦,我现在明白了。也许你们可以查看这个讨论;