Skip to main content

Debug

See query String in debug logs.

public inherited sharing class AccountSelector implements SOQL.Selector {

public static SOQL query() {
return SOQL.of(Account.SObjectType)
.with(new List<SObjectField>{
Account.Id,
Account.Name
});
}
}

public with sharing class MyController {

public static List<Account> getAccounts() {
return AccountSelector.query()
.with(new List<SObjectField>{
Account.BillingCity,
Account.BillingCountry,
Account.BillingCountryCode
})
.whereAre(SOQL.FilterGroup
.add(SOQL.Filter.with(Account.Id).equal('0013V00000WNCw4QAH'))
.add(SOQL.Filter.with(Account.Name).contains('Test'))
.conditionLogic('1 OR 2')
)
.preview()
.toList();
}
}

You will see in debug logs:

============ Query Preview ============
SELECT Name, AccountNumber, BillingCity, BillingCountry, BillingCountryCode
FROM Account
WHERE (Id = :v1 OR Name LIKE :v2)
=======================================

============ Query Binding ============
{
"v2" : "%Test%",
"v1" : "0013V00000WNCw4QAH"
}
=======================================