为了在带有名称的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方法名称


猜你喜欢
- JDK19新特性使用实例详解 2023-06-01
- Java使用泛型实现栈结构的示例代码 2023-04-17
- JSP验证码动态生成方法 2023-08-03
- Springboot项目中内嵌sqlite数据库的配置流程 2023-01-13
- Java与JavaScript前后端实现手机号验证码一键注册登陆抖音流程 2023-01-29
- SpringMVC中RequestBody注解的List参数传递方式 2023-06-30
- java – 如何使用MySql维护Hibernate ID序列. 2023-11-03
- Java双重MD5加密实现安全登录 2023-02-27
- Mybatis拦截器实现自定义需求 2023-07-15
- java – 如何找到执行的SQL查询没有返回任何内容? 2023-11-01