为了在带有名称的SQL表中获取记录,我使用以下查询:SELECT * FROM User WHERE User.name = name;相应的Spring JPA方法名称如下:UserEntity findUserByName(@Param(name) String name);我的问题如下:如何从SQL表...
为了在带有名称的SQL表中获取记录,我使用以下查询:
SELECT * FROM User WHERE User.name = name;
相应的Spring JPA方法名称如下:
UserEntity findUserByName(@Param("name") String name);
我的问题如下:
如何从SQL表中请求随机记录?
我知道我的SQL查询应该如下:
SELECT * FROM User
ORDER BY RAND()
LIMIT 1;
但是,相应的Spring JPA方法名称应该是什么呢?
UserEntity findUserXXXXXXX (XXXXXXX);
解决方法:
JPA支持规范中定义的函数.您可以使用本机查询选项或JPA 2.1函数来调用JPA规范不直接支持的数据库函数.您可以在spring数据jpa存储库中使用@Query注释.
原生查询
@Query(value="SELECT * FROM User ORDER BY RAND() LIMIT 1", nativeQuery = true)
UserEntity findUser();
功能
@Query("SELECT u FROM UserEntity u order by function('RAND')")
List<UserEntity> findUser();
您可以使用list.get(0)来获取单个用户.
沃梦达教程
本文标题为:java – 用于在SQL中请求随机行的相应Spring JPA方法名称
基础教程推荐
猜你喜欢
- 用于PL / SQL的ANTLR解析器,目标语言为Java 2023-11-07
- 详解Java线程池如何实现优雅退出 2023-03-07
- JavaSE递归求解汉诺塔问题的思路与方法 2023-03-31
- JSP中的FORM表单中只有一个input文本时,按回车键将会自动提交表单 2023-08-01
- 使用JDBC工具类实现简单的登录管理系统 2022-10-30
- Java操作FTP实现上传下载功能 2023-06-30
- 如何使用离线和在线数据库创建Java桌面应用程序,定期同步? 2023-11-03
- Spring @Cacheable指定失效时间实例 2023-08-10
- 关于接口ApplicationContext中的getBean()方法使用 2023-06-02
- MyBatisPlus查询投影与查询条件详细讲解 2023-04-18