Toggle Side Panel

  • Blogs
  • Consultants
    • Salesforce Product Expertise
      • Top Salesforce ConsultantsTop Salesforce Consultants
      • Marketing Cloud ConsultantsMarketing Cloud Consultants
      • Service Cloud ConsultantsService Cloud Consultants
      • Experience Cloud ConsultantsExperience Cloud Consultants
      • Analytics Cloud ConsultantsAnalytics Cloud Consultants
    • Salesforce Industry Expertise
      • Non-Profit Cloud ConsultantsNon-Profit Cloud Consultants
      • Financial Service Cloud ConsultantsFinancial Service Cloud Consultants
      • Health Cloud ConsultantsHealth Cloud Consultants
      • Commerce Cloud ConsultantsCommerce Cloud Consultants
      • Manufacturing Cloud ConsultantsManufacturing Cloud Consultants
    • Salesforce Experts by Location
      • USATop Salesforce Consultants in USA
      • IndiaTop Salesforce Consultants in India
      • AustraliaTop Salesforce Consultants in Australia
      • United KingdomTop Salesforce Consultants in UK
      • CanadaTop Salesforce Consultants in Canada
  • Webinars
  • Contact Us
  • Discussions
More options
    Sign in Sign up
    • Blogs
    • Consultants
      • Salesforce Product Expertise
        • Top Salesforce ConsultantsTop Salesforce Consultants
        • Marketing Cloud ConsultantsMarketing Cloud Consultants
        • Service Cloud ConsultantsService Cloud Consultants
        • Experience Cloud ConsultantsExperience Cloud Consultants
        • Analytics Cloud ConsultantsAnalytics Cloud Consultants
      • Salesforce Industry Expertise
        • Non-Profit Cloud ConsultantsNon-Profit Cloud Consultants
        • Financial Service Cloud ConsultantsFinancial Service Cloud Consultants
        • Health Cloud ConsultantsHealth Cloud Consultants
        • Commerce Cloud ConsultantsCommerce Cloud Consultants
        • Manufacturing Cloud ConsultantsManufacturing Cloud Consultants
      • Salesforce Experts by Location
        • USATop Salesforce Consultants in USA
        • IndiaTop Salesforce Consultants in India
        • AustraliaTop Salesforce Consultants in Australia
        • United KingdomTop Salesforce Consultants in UK
        • CanadaTop Salesforce Consultants in Canada
    • Webinars
    • Contact Us
    • Discussions
    Close search

    Activity › Forums › Salesforce® Discussions › How to use trigger to count number of contacts associated with an account without violating the governor limits in Salesforce?

    Tagged: Account, Contacts, Governor Limits, List Account, Salesforce Trigger

    • Salesforce® Discussions

      How to use trigger to count number of contacts associated with an account without violating the governor limits in Salesforce?

      Posted by Marziya on January 14, 2020 at 2:07 PM

      How to use trigger to count number of contacts associated with an account without violating the governor limits in Salesforce?

      MOHIT replied 6 years, 8 months ago 2 Members · 1 Reply
      • Account
      • Contacts
      • Governor Limits
      • List Account
      • Salesforce Trigger
    • 1 Reply
    • MOHIT

      Member
      January 15, 2020 at 2:06 PM

      trigger ContactTrigger on Contact (after insert, after update, after delete, after undelete) {
      //---> above handling all states which could see a contact added to or removed from an account

      //---> on delete we use Trigger.Old, all else, Trigger.new
      List<Contact> contacts = Trigger.isDelete ? Trigger.old : Trigger.new;

      //---> the Set class rocks for finding the unique values in a list
      Set<Id> acctIds = new Set<Id>();

      for (Contact c : contacts) {
      //yes, you can have a contact without an account
      if (c.AccountId != null) {
      acctIds.add(c.AccountId);
      }
      }

      List<Account> acctsToRollup = new List<Account>();

      //****** Here is the Aggregate query...don't count in loops, let the DB do it for you*****
      for (AggregateResult ar : [SELECT AccountId AcctId, Count(id) ContactCount
      FROM Contact
      WHERE AccountId in: acctIds
      GROUP BY AccountId]){
      Account a = new Account();
      a.Id = (Id) ar.get('AcctId'); //---> handy trick for updates, set the id and update
      a.Contact_Count__c = (Integer) ar.get('ContactCount');
      acctsToRollup.add(a);
      }

      //----> probably you'll want to do a little more error handling than this...but this should work.
      update acctsToRollup;

      }

    Log In to reply.

    • Public
    • All Members
    • My Connections
    • Only Me
    • Public
    • All Members
    • My Connections
    • Only Me
    • Public
    • All Members
    • My Connections
    • Only Me

    Popular Salesforce Blogs

    Salesforce Initiatives To Help Your Nonprofit Organization

    Blog in Salesforce

    Nonprofit organizations need a tremendous amount of resources—but many have little to no budget to purchase high-end technology to manage their workflow and financials. Unfortunately,…

    AppExchange, Apps, Certified Partners, Charitable, Charitable Organization
    Apphienz Mar 25, 2021
    3,018  Views

    Optimizing Community Management through Khoros and Salesforce Integration

    Blog in Salesforce integration

    With its extensive set of capabilities, Khoros is a powerful platform that has great potential in the world of online communities. On the other hand,…

    Community Managers, Community Platform, Continuous Improvements, CRM System, Customer Support
    Amisha Makkar Jan 3, 2024
    2,484  Views

    Four Most Unused Salesforce Features That You Need To Start Using

    Blog in Others

    Salesforce is a marvelous CRM. When actualized and received, it can have extraordinary outcomes for your business. In any case, would you say you are…

    CSV File, dataloader.io, Excel Connector, Features of Salesforce, Field History Tracking
    William Dec 19, 2018
    4,521  Views

    Popular Salesforce Videos

    What are Global Picklists and Field Dependency in Salesforce? | How to Create Global Picklists?

    What are Global Picklists and Field Dependency in Salesforce? | How to Create Global Picklists?

    Video in Others, Salesforce Stories, Salesforce Training

    In this video, Shrey is not only teaching but also demonstrating to you "What are Global Picklists & Field Dependency in Salesforce?". You will be…

    Salesforce Training, Salesforce Administrator, Field Dependency In Salesforce, Salesforce Video, Salesforce Learning
    Jogender Sep 1, 2020
    1,958  Views
    Access & Permissions in Salesforce | Profiles, Permission Sets, Sharing Settings

    Access & Permissions in Salesforce | Profiles, Permission Sets, Sharing Settings

    Video in Salesforce Security

    User permissions and access settings specify what users can do within an organization: Permissions determine a user's ability to edit an object record, view the…

    Salesforce Apex, Salesforce Security, Apex Class, Salesforce Records, Salesforce Triggers
    Portia Mar 22, 2018
    2,355  Views
    Salesforce Editions Explained

    Salesforce Editions Explained

    Video in Salesforce Admin

    In this video, we break down the Salesforce Editions—Essentials, Professional, Enterprise, and Unlimited—to help you understand which one is best for your business. Whether you're…

    Elastik Sep 5, 2025
    295  Views
    Footer Forcetalks logo

    support@forcetalks.com

    • twitterx

    Quick Links

    Advertise with Us

    Salesforce® Articles

    Dreamforce 2023

    Top Salesforce® Bloggers 2023

    Top Salesforce Consultants

    Get Listed

    Company

    Contact Us

    About Us

    Privacy Policy

    Terms & Conditions

    InsightHub

    Salesforce Blogs

    Salesforce Videos

    Salesforce Groups

    Salesforce Jobs

    © 2026 - Forcetalks ● All Rights Reserved

    Salesforce® is a trademark of Salesforce® Inc. No claim is made to the exclusive right to use “Salesforce”. Any services offered within the Forcetalks website/app are not sponsored or endorsed by Salesforce®.

    We use cookies to enhance your browsing experience. Please see our privacy policy if you'd like more information on our use of cookies.