Published on

Different Types of SOQL in Salesforce

Authors
  • avatar
    Name
    Himanshu Varshney
    Twitter

    Senior Salesforce Developer

SOQLBlog

Basic SOQL Query:

This is a simple query that retrieves records from a single object.

Example:


SELECT Name, Industry FROM Account


SOQL Query with Conditions:

You can filter records based on certain conditions using the WHERE clause.

Example:

SELECT Name, Industry FROM Account WHERE Industry = 'Technology'


SOQL Query with Order By:

You can sort the query results using the ORDER BY clause.

Example:

SELECT Name, Industry FROM Account WHERE Industry = 'Technology' ORDER BY Name ASC


SOQL Query with Relationships:

You can traverse relationships between objects in a query to retrieve related data.

Example:

SELECT Name, (SELECT LastName FROM Contacts) FROM Account


SOQL Query with Aggregate Functions:

You can use aggregate functions like COUNT, SUM, AVG, etc., to perform calculations on grouped data.

Example:

SELECT Industry, AVG(Amount) FROM Opportunity GROUP BY Industry


SOQL Query with Date Functions:

You can use date functions to filter records based on date-related criteria.

Example:

SELECT Name FROM Account WHERE CreatedDate > LAST_N_DAYS:30


SOQL Query with LIMIT and OFFSET:

Use LIMIT to restrict the number of records returned and OFFSET for pagination.

Example:

SELECT Name FROM Account LIMIT 10 OFFSET 20


SOQL Query with Subqueries:

You can use subqueries to retrieve related data within the main query.

Example:

SELECT Name, (SELECT LastName FROM Contacts) FROM Account WHERE Industry = 'Finance'


SOQL Query with IN Clause:

Use the IN clause to match a value against a list of values.

Example:

SELECT Name FROM Account WHERE Industry IN ('Technology', 'Healthcare')


Dynamic SOQL:

Build queries dynamically based on runtime conditions using dynamic SOQL.

Example (Apex code):

String objectType = 'Account';
String query = 'SELECT Name FROM ' + objectType;


These are just some examples of the different types of SOQL queries you can use in Salesforce. The specific syntax and available features may vary, so it's always a good idea to refer to the Salesforce documentation for the most up-to-date information.