类似或包含Spring Data JPA



我正在处理Spring Boot Data JPA,在阅读文档时,我感到困惑。有什么区别?

我所理解的是;喜欢";运算符使SQL不带"%"包围我的字符串(其中名称类似于"字符串"(;包含";运算符使用"%"生成SQL"围绕我的字符串(其中名称类似"%String%"(。我错了吗?

我用了";喜欢";操作员,并且他在"%"两边都需要,所以,我真的很困惑!

like模拟containing是正确的。

区别在于:

  • 使用like时,您必须自己用通配符将搜索字符串括起来
  • 不仅可以在开头或结尾,还可以在中间使用通配符,在中间使用多个通配符,以及与单个字符匹配的不同通配符,如_
  • 最后一个分文件的区别是containing将转义搜索参数中包含的通配符,而类似的情况不会。因此,当搜索abc%def时,两者的行为不同
    | containing     | like (with additional `%` around the searchstring)
    -------------------------------------------------------------------------------------
    123abc%def456   | matches        | matches
    123abcXYZdef456 | does not match | matches
    

最新更新