• (转)Support for COUNT(DISTINCT) in Fetch XML queries


    Support for COUNT(DISTINCT) in Fetch XML queries

    10 Mar 2009 12:19 PM
    • Comments 3

    We have made a couple of enhancements to the aggregate query feature of Fetch XML. These updates have shipped for version 4.0 as part of UR2 and for version 3.0 as documented in KB Article 960079. So far we only supported the count aggregate function which essentially did a count(*) on the base table of the entity.

    We have enhanced this functionality to add a new aggregate operation countcolumn which now performs the SQL count operation for a given column. It also support the distinct keyword which only counts unique columns. If the distinct keyword is not specified with a countcolumn aggregate, its value defaults to false.

    Here is a table that summarizes the Fetch aggregate types and its equivalent SQL translation:

    CRM Fetch XML

    SQL

    <attribute name='address1_city' aggregate='count' alias='citycount' />

    SELECT COUNT(*) AS 'citycount' FROM Account

    <attribute name='address1_city' aggregate='countcolumn' alias='citycount' />

    SELECT COUNT(address1_city) AS 'citycount' FROM Account

    <attribute name='address1_city' aggregate='countcolumn' alias='citycount' distinct='true' />

    SELECT COUNT(DISTINCT address1_city) AS 'citycount' FROM Account

                                                         Key: Existing Feature, New Feature

    Here are a couple of examples for using these features:

    Query to return a count of all Accounts which have a county specified in their address.

       1: Query to return a count of all Accounts which have a county specified in their address.
       2: <fetch aggregate='true'>
       3:     <entity name='account'>
       4:         <attribute name='address1_county' aggregate='countcolumn' alias='countyAccounts' />
       5:     </entity>
       6: </fetch>

    Query to return a count of states in which we have an account. This uses the distinct keyword which counts a state only once.

       1: <fetch aggregate='true'>
       2:     <entity name='account'>
       3:         <attribute name='address1_stateorprovince' aggregate='countcolumn' alias='countStates' distinct='true' />
       4:     </entity>
       5: </fetch>

    Thanks

    Noor Merchant

  • 相关阅读:
    ImgeView的scaleType
    linux 重命名文件和文件夹
    退出整个应用解决方案
    md5验证文件
    cat和echo重定向,文件读写
    Nginx下配置Https 配置文件(vue)
    Nginx下配置Https证书详细过程
    大型系列课程之-七夕告白之旅Electron篇
    大型系列课程之-七夕告白之旅vbs篇
    vue前后分离项目部署(不同端口号,nginx反向代理解决跨域问题)
  • 原文地址:https://www.cnblogs.com/janmson/p/1773051.html
Copyright © 2020-2023  润新知