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.