Альтернатива ключевому слову IN SQL в скриптах Siebel Server для поиска?

Кто-нибудь знает, как мы можем отфильтровать результаты BC на основе нескольких значений в спецификации поиска? Как IN ключевое слово в SQL? что-то вроде:

bc.SetSearchExpr("[Id] in ('a','b','c')"); 

Или использование OR оператор является единственным решением?

2 ответа

Решение

Нет, вы не можете использовать IN в Siebel это недопустимый оператор поиска. Но, по крайней мере, вы можете упростить свое выражение, используя поисковую спецификацию вместо поискового выражения. Эти две строки делают одно и то же:

bc.SetSearchExpr("[Id]='a' or [Id]='b' or [Id]='c'");

bc.SetSearchSpec("Id", "='a' OR ='b' OR ='c'");

Обратите внимание, что вы не можете использовать оба SetSearchSpec а также SetSearchExpr методы одновременно.

Вы можете использовать ИЛИ, как это:

bc.SetSearchExpr("[Id] = 'a' or [Id] ='b' or [Id] ='c')");

но я думаю, используя IN лучше, чем использовать OR,

Кроме использования IN или же OR у вас нет выбора.

Другие вопросы по тегам