java - Spring jpa使用字符串日期检查记录是否存在
问题描述
我想使用 Spring JPA 查询使用两个参数检查数据库是否已经存在给定运行日期和名称的记录:
@Query("SELECT CASE WHEN COUNT(r)> 0 THEN true ELSE false END FROM REQUEST r WHERE r.NAME = :reqName AND r.RUN_DATE = :runDate")
boolean existsRequest(@Param("reqName") String reqName,
@Param("runDate") String runDate);
RUN_DATE
在Database H2 中,Sql Server的类型是一个DATE
字段。然而,我提供 String 作为格式日期的参数YYYY-MM-DD
。
以上对我不起作用,我想知道如何使用 JPQL 和 nativeQuery 正确编写它?
解决方案
对于这种特定情况,我认为最优雅的方法是使用查询方法:
boolean existsByNameAndRunDate(String name, String runDate);
推荐阅读
- ios - 从视频中提取缩略图时出现黑色空白图像
- python - 使用 MacOS 的 matplotlib 的哪个后端?
- c# - 如何在 DatePicker 中显示我将字符串转换为日期时间的日期
- python - 使用 Pandas 根据该行中的值从 csv 文件中删除特定行之前的行
- vue.js - 测试在一个一个运行时通过,但测试套件抛出错误
- scala - Databricks 在尝试枚举目录时无法访问 Data Lake Gen1
- php - 获取 PHP eval 的跟踪调用列表或手动覆盖它
- javascript - 计算持续时间并在 daterangepicker 日历中显示
- string - [..] 对于 Rust 切片意味着什么,它叫什么?
- java-8 - CMS 类卸载花费了很多时间