Getting AggregateResult variables from Execute Anonymous Window Unicorn Meta Zoo #1: Why another podcast? Announcing the arrival of Valued Associate #679: Cesar Manara 2019 Community Moderator Election ResultsRun a standard set controller extension from execute anonymousCan I return entire record set when using the Execute Anonymous Window in Dev Console?Execute anonymous - switch projectsSOQL: Execute Anonymous and Query Editor returning different resultsAutomatic re-naming of bind variable in Execute Anonymous debug log - why did/does this happen?How SOQL For Loop instead of SOQL may solve System.LimitException: Too many query rows: 50001?Execute a schedulable class from execute anonymous windowAggregateResult looping over empty query?'Expecting colon' error in SOQL query when not using a variableRunning Batch in Execute Anonymous but throwing error: method does not exist or incorrect signature void format string from the type anon

"Working on a knee"

What was Apollo 13's "Little Jolt" after MECO?

How to keep bees out of canned beverages?

My admission is revoked after accepting the admission offer

Married in secret, can marital status in passport be changed at a later date?

What *exactly* is electrical current, voltage, and resistance?

Is there a verb for listening stealthily?

Where/What are Arya's scars from?

Does Prince Arnaud cause someone holding the Princess to lose?

Could a cockatrice have parasitic embryos?

Why did Europeans not widely domesticate foxes?

Processing ADC conversion result: DMA vs Processor Registers

Coin Game with infinite paradox

Was Objective-C really a hindrance to Apple software development?

Is it OK if I do not take the receipt in Germany?

What were wait-states, and why was it only an issue for PCs?

Are these square matrices always diagonalisable?

In search of the origins of term censor, I hit a dead end stuck with the greek term, to censor, λογοκρίνω

`FindRoot [ ]`::jsing: Encountered a singular Jacobian at a point...WHY

Preserving file and folder permissions with rsync

What's called a person who works as someone who puts products on shelves in stores?

Retract an already submitted Recommendation Letter (written for an undergrad student)

What is the purpose of the side handle on a hand ("eggbeater") drill?

Has a Nobel Peace laureate ever been accused of war crimes?



Getting AggregateResult variables from Execute Anonymous Window



Unicorn Meta Zoo #1: Why another podcast?
Announcing the arrival of Valued Associate #679: Cesar Manara
2019 Community Moderator Election ResultsRun a standard set controller extension from execute anonymousCan I return entire record set when using the Execute Anonymous Window in Dev Console?Execute anonymous - switch projectsSOQL: Execute Anonymous and Query Editor returning different resultsAutomatic re-naming of bind variable in Execute Anonymous debug log - why did/does this happen?How SOQL For Loop instead of SOQL may solve System.LimitException: Too many query rows: 50001?Execute a schedulable class from execute anonymous windowAggregateResult looping over empty query?'Expecting colon' error in SOQL query when not using a variableRunning Batch in Execute Anonymous but throwing error: method does not exist or incorrect signature void format string from the type anon



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








3















I am trying to execute a block of code using the Execute Anonymous Window that is meant to delete some duplicated data, but I am getting this weird error about a variable not existing even though my debugging says otherwise.



Here is what I have:



List<AggregateResult> ars = [SELECT YTPQuiz__c quiz FROM YTPQuestion__c GROUP BY YTPQuiz__c HAVING Count(Id) > 1];
System.debug(ars);
for (AggregateResult ar : ars)
System.debug(ar.quiz);



In the for-loop you will see I simply print the quiz variable I assigned during the SOQL statement, but I get an error saying that this variable does not exist.



If I replace this debug line with System.debug(ar) the log print out a bunch of object like:



DEBUG|AggregateResult:quiz=a1XY0000000012
DEBUG|AggregateResult:quiz=a1XY0000000013
DEBUG|AggregateResult:quiz=a1XY0000000014
DEBUG|AggregateResult:quiz=a1XY0000000015


Yet, I can't access the quiz variable.



If I don't alias YTPQuiz__c as quiz then it will print out



DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000012
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000013
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000014
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000015


Yet, I get the error that ar.YTPQuiz__c variable doesn't exist. I even tried ar.expr0 and it said that variable doesn't exist.



I've done this exact same method of accessing AggregateResults in APEX classes and it works perfectly fine, but not this Anonymous Execution Window... What could possibly be wrong?










share|improve this question






















  • As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

    – Jayant Das
    5 hours ago

















3















I am trying to execute a block of code using the Execute Anonymous Window that is meant to delete some duplicated data, but I am getting this weird error about a variable not existing even though my debugging says otherwise.



Here is what I have:



List<AggregateResult> ars = [SELECT YTPQuiz__c quiz FROM YTPQuestion__c GROUP BY YTPQuiz__c HAVING Count(Id) > 1];
System.debug(ars);
for (AggregateResult ar : ars)
System.debug(ar.quiz);



In the for-loop you will see I simply print the quiz variable I assigned during the SOQL statement, but I get an error saying that this variable does not exist.



If I replace this debug line with System.debug(ar) the log print out a bunch of object like:



DEBUG|AggregateResult:quiz=a1XY0000000012
DEBUG|AggregateResult:quiz=a1XY0000000013
DEBUG|AggregateResult:quiz=a1XY0000000014
DEBUG|AggregateResult:quiz=a1XY0000000015


Yet, I can't access the quiz variable.



If I don't alias YTPQuiz__c as quiz then it will print out



DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000012
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000013
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000014
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000015


Yet, I get the error that ar.YTPQuiz__c variable doesn't exist. I even tried ar.expr0 and it said that variable doesn't exist.



I've done this exact same method of accessing AggregateResults in APEX classes and it works perfectly fine, but not this Anonymous Execution Window... What could possibly be wrong?










share|improve this question






















  • As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

    – Jayant Das
    5 hours ago













3












3








3








I am trying to execute a block of code using the Execute Anonymous Window that is meant to delete some duplicated data, but I am getting this weird error about a variable not existing even though my debugging says otherwise.



Here is what I have:



List<AggregateResult> ars = [SELECT YTPQuiz__c quiz FROM YTPQuestion__c GROUP BY YTPQuiz__c HAVING Count(Id) > 1];
System.debug(ars);
for (AggregateResult ar : ars)
System.debug(ar.quiz);



In the for-loop you will see I simply print the quiz variable I assigned during the SOQL statement, but I get an error saying that this variable does not exist.



If I replace this debug line with System.debug(ar) the log print out a bunch of object like:



DEBUG|AggregateResult:quiz=a1XY0000000012
DEBUG|AggregateResult:quiz=a1XY0000000013
DEBUG|AggregateResult:quiz=a1XY0000000014
DEBUG|AggregateResult:quiz=a1XY0000000015


Yet, I can't access the quiz variable.



If I don't alias YTPQuiz__c as quiz then it will print out



DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000012
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000013
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000014
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000015


Yet, I get the error that ar.YTPQuiz__c variable doesn't exist. I even tried ar.expr0 and it said that variable doesn't exist.



I've done this exact same method of accessing AggregateResults in APEX classes and it works perfectly fine, but not this Anonymous Execution Window... What could possibly be wrong?










share|improve this question














I am trying to execute a block of code using the Execute Anonymous Window that is meant to delete some duplicated data, but I am getting this weird error about a variable not existing even though my debugging says otherwise.



Here is what I have:



List<AggregateResult> ars = [SELECT YTPQuiz__c quiz FROM YTPQuestion__c GROUP BY YTPQuiz__c HAVING Count(Id) > 1];
System.debug(ars);
for (AggregateResult ar : ars)
System.debug(ar.quiz);



In the for-loop you will see I simply print the quiz variable I assigned during the SOQL statement, but I get an error saying that this variable does not exist.



If I replace this debug line with System.debug(ar) the log print out a bunch of object like:



DEBUG|AggregateResult:quiz=a1XY0000000012
DEBUG|AggregateResult:quiz=a1XY0000000013
DEBUG|AggregateResult:quiz=a1XY0000000014
DEBUG|AggregateResult:quiz=a1XY0000000015


Yet, I can't access the quiz variable.



If I don't alias YTPQuiz__c as quiz then it will print out



DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000012
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000013
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000014
DEBUG|AggregateResult:YTPQuiz__c=a1XY0000000015


Yet, I get the error that ar.YTPQuiz__c variable doesn't exist. I even tried ar.expr0 and it said that variable doesn't exist.



I've done this exact same method of accessing AggregateResults in APEX classes and it works perfectly fine, but not this Anonymous Execution Window... What could possibly be wrong?







soql execute-anonymous aggregateresult






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked 5 hours ago









BlondeSwanBlondeSwan

34110




34110












  • As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

    – Jayant Das
    5 hours ago

















  • As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

    – Jayant Das
    5 hours ago
















As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

– Jayant Das
5 hours ago





As far as I know you will need to use ar.get('quiz') to be able to get the data here. If you don't have aliases, then you use ar.get('expr0') and so on depending on the order of the field.

– Jayant Das
5 hours ago










2 Answers
2






active

oldest

votes


















2














If you alias the field, you then call .get('alias'). In your case, you would do something like:



for (AggregateResult aggregate : [
SELECT YTPQuiz__c quiz FROM YTPQuestion__c
GROUP BY YTPQuiz__c HAVING Count(Id) > 1
])
Id quizId = (Id)aggregate.get('quiz');






share|improve this answer






























    2














    You will need to utilize ar.get(alias-name) here based on the Working with SOQL Aggregate Functions documentation.



    So in your case it will be:



    ar.get('quiz');


    If you didn't have any aliasing, then you would have to use expri depending on the appearance of the field in the query.






    share|improve this answer























      Your Answer








      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "459"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f258860%2fgetting-aggregateresult-variables-from-execute-anonymous-window%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2














      If you alias the field, you then call .get('alias'). In your case, you would do something like:



      for (AggregateResult aggregate : [
      SELECT YTPQuiz__c quiz FROM YTPQuestion__c
      GROUP BY YTPQuiz__c HAVING Count(Id) > 1
      ])
      Id quizId = (Id)aggregate.get('quiz');






      share|improve this answer



























        2














        If you alias the field, you then call .get('alias'). In your case, you would do something like:



        for (AggregateResult aggregate : [
        SELECT YTPQuiz__c quiz FROM YTPQuestion__c
        GROUP BY YTPQuiz__c HAVING Count(Id) > 1
        ])
        Id quizId = (Id)aggregate.get('quiz');






        share|improve this answer

























          2












          2








          2







          If you alias the field, you then call .get('alias'). In your case, you would do something like:



          for (AggregateResult aggregate : [
          SELECT YTPQuiz__c quiz FROM YTPQuestion__c
          GROUP BY YTPQuiz__c HAVING Count(Id) > 1
          ])
          Id quizId = (Id)aggregate.get('quiz');






          share|improve this answer













          If you alias the field, you then call .get('alias'). In your case, you would do something like:



          for (AggregateResult aggregate : [
          SELECT YTPQuiz__c quiz FROM YTPQuestion__c
          GROUP BY YTPQuiz__c HAVING Count(Id) > 1
          ])
          Id quizId = (Id)aggregate.get('quiz');







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 5 hours ago









          Adrian LarsonAdrian Larson

          111k19121259




          111k19121259























              2














              You will need to utilize ar.get(alias-name) here based on the Working with SOQL Aggregate Functions documentation.



              So in your case it will be:



              ar.get('quiz');


              If you didn't have any aliasing, then you would have to use expri depending on the appearance of the field in the query.






              share|improve this answer



























                2














                You will need to utilize ar.get(alias-name) here based on the Working with SOQL Aggregate Functions documentation.



                So in your case it will be:



                ar.get('quiz');


                If you didn't have any aliasing, then you would have to use expri depending on the appearance of the field in the query.






                share|improve this answer

























                  2












                  2








                  2







                  You will need to utilize ar.get(alias-name) here based on the Working with SOQL Aggregate Functions documentation.



                  So in your case it will be:



                  ar.get('quiz');


                  If you didn't have any aliasing, then you would have to use expri depending on the appearance of the field in the query.






                  share|improve this answer













                  You will need to utilize ar.get(alias-name) here based on the Working with SOQL Aggregate Functions documentation.



                  So in your case it will be:



                  ar.get('quiz');


                  If you didn't have any aliasing, then you would have to use expri depending on the appearance of the field in the query.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 4 hours ago









                  Jayant DasJayant Das

                  19k21331




                  19k21331



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Salesforce Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f258860%2fgetting-aggregateresult-variables-from-execute-anonymous-window%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Dapidodigma demeter Subspecies | Notae | Tabula navigationisDapidodigmaAfrotropical Butterflies: Lycaenidae - Subtribe IolainaAmplifica

                      Constantinus Vanšenkin Nexus externi | Tabula navigationisБольшая российская энциклопедияAmplifica

                      Vas sanguineum Index Historia | Divisio | Constructio anatomica | Vasorum sanguineorum morbi (angiopathiae) | Notae | Nexus interniTabula navigationisAmplifica