【发布时间】:2016-05-25 16:21:01
【问题描述】:
我正在尝试在 ElasticSearch 中运行类似的字段查询:
select * from products where 'milk' like '%'+name+'%'
意思是我正在尝试查找在这种情况下产品名称是“牛奶”子字符串的所有文档。
我该怎么做?
【问题讨论】:
-
我不确定它如何帮助我不需要:文本 LIKE "%quick%",我需要相反(见问题
-
你能举例说明一下吗?类似于 3 个带有产品名称的文档:abcmilkman、abcman、a man 等。您希望前 2 个文档作为结果返回吗?如果是这样,那么sql查询似乎有点不对劲,我的意思是它不应该是
select * from products where 'product_name' like '%'+milk+'%'吗?还是我都搞错了 -
@ArchitSaxena 这不是我需要的。例如如果我有一个产品名称为“bc”、“cd”和“def”的文档,并且查询是“abcde”,我想获取前两个文档,就像在 SQL
select * from products where 'abcde' like '%' + product_name + '%' -
您能解释一下
name在'%'+name+'%'中的含义吗?您是否以某种方式使用某种编程语言构建了这个 SQL 查询,并且将查询的不同部分连接在一起?因为+在 SQL 中不是有效的运算符。
标签: elasticsearch full-text-search substring