Master Salesforce SOQL Queries

100+ essential SOQL queries to supercharge your Salesforce data analysis and automation.

User and Permission Management

Queries 1-5: Manage user data and permissions for IT and HR teams.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Account and Contact Management

Queries 6-16: Manage customer account and contact data for CRM.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Opportunity and Sales Management

Queries 17-30: Track sales performance and opportunities.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Lead Management

Queries 31-34: Monitor lead conversions and sources.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Case and Support Management

Queries 35-38: Manage customer support cases.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Apex and Development

Queries 39-42: Support Apex code development.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Advanced Queries and Aggregations

Queries 43-50: Perform complex data analysis.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Historical and Time-Based Queries

Queries 51-53: Track historical data changes.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Custom Object Queries

Queries 54-55: Handle custom objects.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Performance and Optimization

Queries 56-58: Optimize data retrieval.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Currency and Conversion

Query 59: Handle multi-currency data.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Relationship Queries

Queries 60-61: Navigate object relationships.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Filtering and Sorting

Queries 62-66: Sort and filter data.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Group By and HAVING

Queries 67-69: Aggregate and filter grouped data.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Deleted Records

Query 70: Retrieve deleted records.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Subqueries

Queries 71-72: Use subqueries for complex filtering.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Dynamic Queries

Query 73: Use dynamic SOQL in Apex.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Additional Business Use Cases

Queries 74-100: Miscellaneous business scenarios.

SELECT Id, Name, Username, Email, Profile.Name, UserRole.Name FROM User

- Retrieve all user details.

SELECT Id, Name, IsActive FROM User WHERE IsActive = false

- Identify inactive users.

SELECT Field, PermissionsRead, PermissionsEdit FROM FieldPermissions WHERE SObjectType = 'Account'

- Check field accessibility.

SELECT Id, Name FROM RecordType WHERE SObjectType = 'Account'

- Retrieve account record types.

SELECT Id, Name FROM User WHERE LastLoginDate < LAST_90_DAYS

- Find users with no recent logins.

Note: The effectiveness of these queries depends on your Salesforce configuration. Test them in a sandbox environment and adjust based on your data model.