Salesforce sosl查询通配符未返回正确的结果

Salesforce sosl查询通配符未返回正确的结果,salesforce,apex-code,Salesforce,Apex Code,我有一个使用sosl查询的函数: private List<Product2> runSoslToExecute() { List<List<Product2>> searchResults = [FIND :query IN ALL FIELDS RETURNING Product2 (Id, Name)]; List<Product2> results = new List<Product2>(); for

我有一个使用sosl查询的函数:

private List<Product2> runSoslToExecute() { 
    List<List<Product2>> searchResults = [FIND :query IN ALL FIELDS RETURNING Product2 (Id, Name)];
    List<Product2> results = new List<Product2>();
    for(Product2 p : searchResults[0]) {
        results.add(p);
    }
    return results;
}
private List runSoslToExecute(){
List searchResults=[FIND:在返回Product2(Id,名称)的所有字段中查询];
列表结果=新列表();
对于(Product2 p:searchResults[0]){
结果:添加(p);
}
返回结果;
}
如果我搜索“AB*”,那么我也会得到包含“1AB…”的结果。我认为“*”通配符只在搜索的中间和结束,而不是在搜索的开始?有没有办法运行sosl搜索,使其只在开始时搜索“AB”


谢谢您的帮助。

例如,您可以使用
之类的

Select Id, Name from Account where Name like 'AB%'