我想写一个查询来查找包含子字符串的字符串列表,例如
"xyz-1",
"xyz-2",
"xyz-3",
"xyz-4".....
上面是我需要查找的字符串列表,但我仅输入了xyz而不是全名xyz-1。
在沙发床服务器中,我实现了如下查询,
SELECT * FROM test
WHERE ANY v IN namelist SATISFIES v LIKE '%xyz%' END;
这会给我所有包含xyz的列表名称。但是在Spring Boot应用程序中实现它不起作用。
下面是我的弹簧靴@query menthod
@Query("Select * from `test` where #{#n1ql.filter} And ANY v In namelist SATISFIES v Like '%$1'% END within #{#n1ql.bucket}")
List<String> findBynameList(String name);
下面是我的pojo课,
@Id
private String car_id;
@Field
@NotNull
private String name;
@Field
private List<String> namelist;
LIKE的右侧必须是字符串或查询名称/字符串的位置参数。
如果查询名称/位置参数在字符串中不会被替换。您有'%$ 1'%,它将查找$ 1而不是值。
如果您想寻找价值,可以这样写
v LIKE $1 ===> supply $1 as "%actualvalue%"
v LIKE "%" || $1 || "%"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。