当前位置: 首页 > 知识库问答 >
问题:

在Spring boot中使用“:”作为查询字符串的一部分编写JPQL查询

陆敏学
2023-03-14

我必须在Spring引导中编写一个相当于下面查询的JPQL查询。

查询:

SELECT * FROM flow.logs where feature_id like '%|data:6789%';

我进行的JPQL查询:

@Query("SELECT logs FROM Logs logs WHERE logs.featureId like '%|data\\: :data%'")
    public List<Logs> getLogsByStationId(@Param("data")Integer data);

查询不工作,出现以下异常:未知参数位置:1;嵌套异常是java。lang.IllegalArgumentException:未知参数位置:1

有人能告诉我我的代码有什么问题吗?

共有1个答案

申屠新觉
2023-03-14

您可以像这样使用CONCAT函数

@Query("SELECT logs FROM Logs logs WHERE "
        + "logs.featureId like CONCAT('%|data:', :data, '%')")
 类似资料:
  • 为什么这在房间里不起作用?: 但这是真的吗 有没有办法传入可以作为查询一部分的字符串? 编辑:我知道这不是形成单个LIKE子句的正确方法,但实际上我正在尝试传递多个LIKE子句。所以我想要一种直接向查询中注入文本的方法,但Room似乎不希望我这么做。

  • 我正在为授权服务器开发一个管理用户界面。其中一个功能是显示登录用户的列表,我们通过查询存储当前发布的刷新令牌的数据库表来实现这一点。用户可以从多个设备登录到同一个应用程序,生成多个令牌。目前的要求不是按设备细分此视图,而是如果用户已登录,则它们将显示在列表中。如果我们撤销访问权(此UI的其他要求之一),那么所有设备的刷新令牌都将被撤销。 不管怎样,最让我困惑的是这个问题。我编写这个查询是为了收回指

  • 问题内容: Java专家能否请您帮我写以下查询作为SQL查询条件查询的一部分。 问题答案: 您需要编写一个相关的子查询。假设属性/类名称与上面的列/表名称匹配:

  • 我试图使用查询字符串实现Codeigniter分页,但遇到了一些问题。我已经打开了 因此,使用查询字符串进行分页,但就我所知,当您使用查询字符串进行控制器和方法路由时,这确实是为了工作。然而,在我的情况下,我仍然使用URI段进行路由,但只是想使用查询字符串进行分页、过滤结果、搜索等。当我尝试使用http_build_query()重建的url与查询字符串发送通过它导致per_page(我已重命名为

  • 我使用Java EE7和GlassFish 4.1服务器来构建一个系统,基本上你可以在这个系统中发表想法,每个想法都可以有标签。我已经把实体的概念声明为: 阅读JPA:查询实体中的可嵌入列表后,我尝试通过Tag以以下方式查找: 但是我得到了一个TransactionRolledbackLocalException,原因是: 导致:java.lang.IllegalArgumentException

  • 我的ParkingLotEntity: 我的Jpa存储库接口 上面的两个方法运行良好,但问题是我还需要从结果集到第二个方法“GetAllParkingLotCurrentlyWorkingInRegionOfRadius”中的位置的任何停车场之间的距离!在SQL Server中,我的定义函数已经计算出了距离。方法2的结果集是成功的,但没有返回距离(这是我的需要),只是一组parkingLotEnt