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

如何使用spring-jpa编写查询,从数据库中提取与我们传递的字符串匹配的所有行?

辛建业
2023-03-14

嗨,我是新来的Spring靴。我有一个具有以下属性的表:id、firstName、secondName、lastName。

现在,我需要编写一个查询(在repository中),在我的表中找到所有名字、第二个名字或姓氏与我传递的字符串匹配的行。

例如:如果我传递的是“foo”,那么它应该搜索所有三列,并返回其中任何一列包含“foo“的行(这是模式匹配)。

我该怎么做?先谢谢你。

共有2个答案

曹铭晨
2023-03-14

您可以尝试以下代码

public List<Employee> findByFirstNameIgnoreCaseContainingOrSecondNameIgnoreCaseContainingOrLastNameIgnoreCaseContaining(String firstName,String secondName,String lastName);
汤飞
2023-03-14

您可以像这样对多个列使用< code>Like查询

public interface UserRepository extends PagingAndSortingRepository<User,Long> {

    @Query(value="select u from User u where u.firstName = %searchtext% or u.lastName= %searchtext% or u.secondName= %searchtext%")    
    Page<User> findByAllColumns(@Param("searchtext") String searchtext, Pageable pageable);
}
 类似资料:
  • 问题内容: 我正在尝试解析以下类型的字符串: 里面有任意键:“ val”对。我想获取键名和值。对于那些好奇的人,我试图解析任务战士的数据库格式。 这是我的测试字符串: 这是要强调的是,除了空格,冒号周围没有空格而且值始终用双引号引起来,键或值中的任何内容都可以位于键或值中。 在节点中,这是我的输出: 而且也符合这种模式。如何找回所有比赛? 问题答案: 继续循环调用以获取所有匹配项:

  • 问题内容: 我有一个包含两列的表:price(int)和price_display(varchar)。 price是实际的数字价格,例如“ 9990” price_display是视觉表示,例如“ $ 9.99”或“ 9.99Fr” 我已经能够通过regexp确认两列是否匹配: price_display不是regexp格式(price / 1000,2) 但是在不匹配的情况下,我想从price_

  • 更新这里是我的存储库 这是我的实体

  • 问题内容: 用户可以在我的网站上使用HTML表单输入URL,因此他们可以输入以下内容:http : //www.example.com?test=123&random=abc,可以是任何内容。我需要提取某个查询参数的值,在本例中为“ test”(值123)。有没有办法做到这一点? 问题答案: 你可以用与这样的: 允许将URL分为不同的部分(方案,主机,路径,查询等);在这里,我们使用它仅获取查询(

  • 问题内容: 我正在将JPA 2.0与Hibernate 4.1.0.Final一起使用。我有几个类,Groups和GroupMembers。每个GroupMember都绑定到一个用户对象 是否有可能编写给定User对象的java.util.Set的JPA标准查询,该查询将返回其成员与该Set完全匹配的组?我尝试了以下… 但是它失败了,但… 问题答案: 每个用户都将需要不同的根,因为每个根都与其他用

  • 问题内容: 是否存在通过查询字符串传递数组的标准方法? 需要明确的是,我有一个带有多个值的查询字符串,其中一个是数组值。我希望将该查询字符串值视为一个数组-我不希望该数组爆炸,以使其与其他查询字符串变量没有区别。 编辑: 根据@Alex的答案,没有标准的方法可以执行此操作,因此我的后续工作是什么才是 识别 我正在读取的参数同时是 PHP 和 Javascript 数组的简单方法? 用相同的名称命名