You need to sign in to do that
Don't have an account?
Simran Singh 22
Querying MultiPickList in soql
List<String> caList = new List<String>();
List<SelectOPtion> categorySelectOptionList = new List<SelectOPtion>();
for (Schema.PicklistEntry f : Idea.Categories.getDescribe().getPicklistValues()) {
categorySelectOptionList.add(new SelectOption(f.getValue(),f.getLabel()));
caList.add(String.valueOf(f.getValue()));
}
String query = 'Select id, title, categories, Sub_category__c, Sub_sub_category__c from Idea where ( categories INCLUDES('+caList+'))';
List<idea> idaList = DataBase.query(query);
system.debug(idaList);
It gives an error: Line: 11, Column: 1
System.QueryException: expecting a colon, found '('
List<SelectOPtion> categorySelectOptionList = new List<SelectOPtion>();
for (Schema.PicklistEntry f : Idea.Categories.getDescribe().getPicklistValues()) {
categorySelectOptionList.add(new SelectOption(f.getValue(),f.getLabel()));
caList.add(String.valueOf(f.getValue()));
}
String query = 'Select id, title, categories, Sub_category__c, Sub_sub_category__c from Idea where ( categories INCLUDES('+caList+'))';
List<idea> idaList = DataBase.query(query);
system.debug(idaList);
It gives an error: Line: 11, Column: 1
System.QueryException: expecting a colon, found '('
Here is the code for you .
String caList = '' ;
List<SelectOPtion> categorySelectOptionList = new List<SelectOPtion>();
for (Schema.PicklistEntry f : Idea.Categories.getDescribe().getPicklistValues()) {
categorySelectOptionList.add(new SelectOption(f.getValue(),f.getLabel()));
caList = caList+'\''+f.getValue()+'\',';
}
System.debug('caList==>'+caList);
caList = caList.removeEnd(',');
String query = 'Select id, title, categories from Idea where categories INCLUDES ('+caList+')';
System.debug('query'+query);
List<idea> idaList = DataBase.query(query);
system.debug(idaList);