Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save johncasimiro/734428 to your computer and use it in GitHub Desktop.
Save johncasimiro/734428 to your computer and use it in GitHub Desktop.
A code snippet that mimics the popular Select * SQL syntax in force.com's Apex language.
/*
* @description: A code snippet that mimics the popular Select * SQL syntax in force.com's Apex language.
*/
// Initialize setup variables
String objectName = 'Contact'; // modify as needed
String query = 'SELECT';
Map<String, Schema.SObjectField> objectFields = Schema.getGlobalDescribe().get(objectName).getDescribe().fields.getMap();
// Grab the fields from the describe method and append them to the queryString one by one.
for(String s : objectFields.keySet()) {
query += ' ' + s + ', ';
}
// Manually add related object's fields that are needed.
query += 'Account.Name,'; // modify as needed
// Strip off the last comma if it exists.
if (query.subString(query.Length()-1,query.Length()) == ','){
query = query.subString(0,query.Length()-1);
}
// Add FROM statement
query += ' FROM ' + objectName;
// Add on a WHERE/ORDER/LIMIT statement as needed
query += ' WHERE firstName = \'test\''; // modify as needed
try {
List<Contact> contacts = database.query(query);
} catch (QueryException e){
//perform exception handling
}
@psmak4
Copy link

psmak4 commented Jan 3, 2018

Where do you get that Schema object?

@pranayjswl007
Copy link

Thanks Much appreciated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment