是否可以使用SOSL查询在逗号分隔列表中搜索仍包含通配符的产品名称?
例如,如果您输入如下搜索字符串:productA,productB,productC
我是否可以运行一个SOSL查询,该查询将返回%productA%和%productB%以及%productC%的所有产品?
这可能吗?
感谢您的帮助。
答案 0 :(得分:0)
是的,但不以逗号分隔;)
“OR”被认为是搜索的关键字(类似于SQL和SOQL)。这是一个类似于您在我的Developer Edition中对数据集执行的搜索。
List<List<Sobject>> results = [FIND 'Burli* OR Uni*'
IN Name FIELDS
RETURNING Account (Id, Name)
LIMIT 2];
System.debug(JSON.serializePretty(results[0]));
DEBUG|[ {
"attributes" : {
"type" : "Account",
"url" : "/services/data/v29.0/sobjects/Account/0017000000Lg8WgAAJ"
},
"Id" : "0017000000Lg8WgAAJ",
"Name" : "University of Arizona"
}, {
"attributes" : {
"type" : "Account",
"url" : "/services/data/v29.0/sobjects/Account/0017000000Lg8WbAAJ"
},
"Id" : "0017000000Lg8WbAAJ",
"Name" : "Burlington Textiles Corp of America"
} ]
有关更多好处,请参阅SOSL reference。如果页面底部的样本将会关闭(所有这些花括号) - 请记住,从SOAP API调用的SOQL与从Apex代码调用的SOQL之间存在细微差别。