2013-12-20 3 views
1

Возможно ли использовать запрос SOSL для поиска имен продуктов в списке с разделителями-запятыми, который по-прежнему включает подстановочные знаки?поиск разделенных запятыми списков с использованием SOSL с дикими картами

Например, если ввести строку поиска, как это: productA, productB, productC

Могу ли я запустить SOSL запрос, который будет возвращать все продукты для% productA% и% productB% и% productC%?

Возможно ли это?

Спасибо за любую помощь.

ответ

0

Да, но не через запятую;)

"ИЛИ" считается ключевым словом поиска (аналогично SQL и SOQL). Вот ваш поиск, подобный вашему, выполненный в наборе данных из моего Developer Edition.

Sample search result in Dev. 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 для более положительных героев. Если образцы в нижней части страницы будут отключены (все эти фигурные скобки), помните, что существует небольшая разница между SOQL, называемым SOAP API, и тем, который вызывается из кода Apex.