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

如何在带有查询注释的Spring data jpa中使用具有限制和间隔的查询参数

薄欣怿
2023-03-14

我有一个本机查询要在Spring的@Query注释中使用。问题是我无法为LIMIT AND INTERVAL等非标准子句传递参数。

1) 是否可以在注释中传递限制参数。2) JPA中的程序等价物是什么。它有可以使用的查询接口吗?

@Query(value = "SELECT * FROM scheduler sch where timestamp < (CURRENT_TIMESTAMP + interval '1 seconds') FOR UPDATE SKIP LOCKED LIMIT 5",nativeQuery = true)

此外,不会为每个查询更改limit和interval子句,但应该在jvm启动时设置。

共有1个答案

梁丘琛
2023-03-14

两个步骤1。在方法签名2中使用Pageable-Pageable作为参数。创建PageRequest的对象,并通过传递PageRequest对象调用repository方法。

PageRequest pageRequest=new PageRequest(0,5); // 0 is page (used to calculate offset) and 5 is size (limit).

将pageRequest对象传递给方法。

对于间隔,如果您使用秒,请使用以下命令。

@Query(value = "SELECT * FROM scheduler sch where timestamp < (CURRENT_TIMESTAMP + ((interval '1 seconds') * :seconds)) FOR UPDATE SKIP LOCKED",nativeQuery = true)

传递:秒作为另一个参数。

为了使参数保持恒定,可以创建一个公共静态final变量。

 类似资料:
  • 问题内容: 当运行这个查询 在这样的 它将抛出一个异常,即语法不好,很明显,因为我可以在sql-developer中运行相同的查询。 这是错误吗?我可以同时使用准备好的语句和间隔吗? 问题答案: 整个表达式都是文字,您不能简单地用变量(参数)替换它的一部分。请改用该函数。

  • 我正在使用Spring和Hibernate与MySQL开发应用程序。我是Hibernate的新手,完成了基本任务... 现在,我需要在选择查询中应用连接,以使用注释从多个表中获取数据。我已经找过了,但还是不知道。。。 这里是我的数据库表和bean类: 我的bean类是: 员工信息orm.java 员工登录orm.java 要求: 当empid在两个表上匹配时,我想从employee\u info和

  • 我对Spring中的原生查询有一个问题。我在param value中使用了带有参数nativequery=true注释@query和SQL查询。 而在RezerWacjamanager.java中: 问题是什么时候调用方法RezerWacjadao.getDoStepnosCnatypy(dataOd,dataDo)并执行此查询。我得到一个错误错误: DoStepNosCtypyListdTo.j

  • 问题内容: 我正在使用Spring和Hibernate和MySQL开发应用程序。我是Hibernate的新手,做了基本任务… 现在,我需要在选择查询中应用联接,以使用注释从多个表中获取数据。我已经搜寻过,但仍然不知道… 这是我的数据库表和bean类: 我的bean类是: EmployeeInfoForm.java EmployeeLoginForm.java 需求: 我想选择字段 EMPID,em

  • 我有一个问题与mybatis注释查询以下错误。 组织。阿帕奇。伊巴蒂斯。结合BindingException:未找到参数“strDateStart”。可用参数为[0,1,param1,param2] 下面是mapper类中的代码。 与query中的参数和method中的args使用相同的名称,我可以在具有相同参数的条件中多次使用吗?

  • 问题内容: 我正在尝试测试将参数传递给sql.DB.Query方法的行为(使用database / sql包和github.com/lib/pq上的PostgreSQL驱动程序)。处理原始查询字符串以查看如何插入参数后,是否有任何方法可以获取原始查询字符串?例如,我正在考虑编写一个准备好的查询,然后检查结果语句。有任何想法吗?谢谢! 问题答案: 它看起来不像在查询本身中插入参数。它发送查询,然后等