gpt4 book ai didi

java - 用于搜索单词/字符串是否包含在实体字段之一中的 JPQL 查询

转载 作者:行者123 更新时间:2023-12-05 00:27:08 27 4
gpt4 key购买 nike

基本上,它类似于查看句子中是否存在某个单词。
有实体 Post:

public class Post implements Serializable {
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "post_id", unique = true, nullable = false)
private Integer id;

@Column(name = "post_title", length=300, unique = false, nullable = false)
private String title;

@Column(name = "post_date", unique = false, nullable = false)
private Date date;
...}

我正在尝试实现 JPQL将搜索 Post 的查询在其 byTitle 中具有特定单词/字符串( title ,作为参数传递)的实体实例字段,以及 Date 的另外两个参数类型,表示日期范围 - startDateendDate .

我有这样的想法: SELECT p FROM Post p WHERE :byTitle IN (set of strings created from parsing p.title field) AND p.date>=:startDate AND p.date<=endDate
如何实现这种JPQL查询?或者应该使用 JPA Criteria API?

编辑:
好像有 someString.contains(someSubstring) Java中的函数,JPQL中是否有类似的东西?还是标准API?对于比较,它不必区分大小写。

最佳答案

我已经使用 JPQL LIKE 实现了它与模式表达式配对:

SELECT p FROM Post p WHERE 
p.title LIKE :pattern AND
p.date>=:startDate AND
p.date<=:endDate

哪里 pattern = "%" + someString + "%" .

关于java - 用于搜索单词/字符串是否包含在实体字段之一中的 JPQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21137719/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com