Appian Community and Appian Academy are being upgraded. From July 24–August 3, the Appian Community will be in read-only mode. During this time, the site will be read-only and user registration will be disabled. We apologize for any inconvenience this may cause, but a more secure, stable, and performant Community experience is coming soon!

The new Appian Community launches August 3, followed by Appian Academy on August 7. During the migration, Appian Community Edition, Appian Academy, Documentation, Certifications, Instructor-led Customer Training, Partner Sales Training & Accreditation, and Forum (for Appian Partners and Customers only) will remain available.

Aggregation Query

Hi,

Wanted to understand on how Appian parses an Expression Rule that uses a!queryAggregation and a!queryAggregationColumn against a Table/View? Does it convert and send a query as-is with GROUP By to the database SQL engine or does it get the data and then do the grouping on-fly in its memory?

Thank you in advance for your response.

  Discussion posts and replies are publicly visible

Parents
  • +1
    Certified Lead Developer

    It's intentionally obfuscated through the Appian-based abstraction layer (the data store, at least for the older data types), particularly so that they can shift things around in the back-end on a progressive basis to tweak efficiency without breaking the way things work on the Designer front-end.  That's all a long way of saying, we don't "officially" have any way of directly knowing what the exact SQL is that eventually gets passed to the DB via the Appian query, but it's reasonably safe to assume that by now they've probably fine-tuned it to be reasonably close to the most efficient thing possible.

Reply
  • +1
    Certified Lead Developer

    It's intentionally obfuscated through the Appian-based abstraction layer (the data store, at least for the older data types), particularly so that they can shift things around in the back-end on a progressive basis to tweak efficiency without breaking the way things work on the Designer front-end.  That's all a long way of saying, we don't "officially" have any way of directly knowing what the exact SQL is that eventually gets passed to the DB via the Appian query, but it's reasonably safe to assume that by now they've probably fine-tuned it to be reasonably close to the most efficient thing possible.

Children
No Data