You need to sign in to do that
Don't have an account?
sai babu 1
AggregateResult[] groupedResults = [SELECT AVG(Amount)aver FROM Opportunity]; Object avgAmount = groupedResults[0].get('aver');
AggregateResult[] groupedResults = [SELECT AVG(Amount)aver FROM Opportunity]; Object avgAmount = groupedResults[0].get('aver');
in this code why aver from groupedResult is not accessed directly as
avgAmount = groupedResult.get('aver');
and what is the purpose of casting aggregateresult values.
in this code why aver from groupedResult is not accessed directly as
avgAmount = groupedResult.get('aver');
and what is the purpose of casting aggregateresult values.
AggregateResult object contains the results returned by SOQL. You have used AggregateResult[] as an array type, so the SOQL returns results as a list and which is why you need to access it as groupedResults[0].get('aver').
If you want to access it using this - "groupedResult.get('aver')",
try -
AggregateResult groupedResults = [SELECT AVG(Amount)aver FROM Opportunity];
Object avgAmount = groupedResults.get('aver');
All Answers
AggregateResult object contains the results returned by SOQL. You have used AggregateResult[] as an array type, so the SOQL returns results as a list and which is why you need to access it as groupedResults[0].get('aver').
If you want to access it using this - "groupedResult.get('aver')",
try -
AggregateResult groupedResults = [SELECT AVG(Amount)aver FROM Opportunity];
Object avgAmount = groupedResults.get('aver');