{"id":111778,"date":"2021-03-08T10:37:26","date_gmt":"2021-03-08T05:07:26","guid":{"rendered":"https:\/\/www.vskills.in\/certification\/tutorial\/?page_id=111778"},"modified":"2024-04-12T14:31:35","modified_gmt":"2024-04-12T09:01:35","slug":"single-purpose-aggregation-operations","status":"publish","type":"page","link":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/","title":{"rendered":"Single Purpose Aggregation Operations"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\"><strong>Single Purpose Aggregation Operations<\/strong><\/h4>\n\n\n\n<p>Aggregation refers to a broad class of data manipulation operations that compute a result based on an input and a specific procedure. MongoDB provides a number of aggregation operations that perform specific aggregation operations on a set of data. Although limited in scope, particularly compared to the aggregation pipeline and map-reduce, these operations provide straightforward semantics for common data processing options.<\/p>\n\n\n\n<p>Count &#8211; MongoDB can return a count of the number of documents that match a query. The count command as well as the count() and cursor.count() methods provide access to counts in the mongo shell. As an example, given a collection named records with only the following documents:<\/p>\n\n\n\n<p>{ a: 1, b: 0 }<\/p>\n\n\n\n<p>{ a: 1, b: 1 }<\/p>\n\n\n\n<p>{ a: 1, b: 4 }<\/p>\n\n\n\n<p>{ a: 2, b: 2 }<\/p>\n\n\n\n<p>The following operation would count all documents in the collection and return the number 4:<\/p>\n\n\n\n<p>db.records.count()<\/p>\n\n\n\n<p>The following operation will count only the documents where the value of the field a is 1 and return 3:<\/p>\n\n\n\n<p>db.records.count( { a: 1 } )<\/p>\n\n\n\n<p>Distinct &#8211; The distinct operation takes a number of documents that match a query and returns all of the unique values for a field in the matching documents. The distinct command and db.collection.distinct() method provide this operation in the mongo shell. Consider the following examples of a distinct operation:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg\" alt=\"Image 28\" class=\"wp-image-63795\"\/><\/figure>\n<\/div>\n\n\n<h5 class=\"wp-block-heading\">Diagram of the annotated distinct operation.<\/h5>\n\n\n\n<p>As an example, given a collection named records with only the following documents:<\/p>\n\n\n\n<p>{ a: 1, b: 0 }<\/p>\n\n\n\n<p>{ a: 1, b: 1 }<\/p>\n\n\n\n<p>{ a: 1, b: 1 }<\/p>\n\n\n\n<p>{ a: 1, b: 4 }<\/p>\n\n\n\n<p>{ a: 2, b: 2 }<\/p>\n\n\n\n<p>{ a: 2, b: 2 }<\/p>\n\n\n\n<p>Consider the db.collection.distinct() operation which returns the distinct values of the field b<\/p>\n\n\n\n<p>db.records.distinct( &#8220;b&#8221; )<\/p>\n\n\n\n<p>The results of this operation would resemble<\/p>\n\n\n\n[ 0, 1, 4, 2 ]\n\n\n\n<p>Group &#8211; The group operation takes a number of documents that match a query, and then collects groups of documents based on the value of a field or fields. It returns an array of documents with computed results for each group of documents. Access the grouping functionality via the group command or the db.collection.group() method in the mongo shell. group does not support data in sharded collections. In addition, the results of the group operation must be no larger than 16 megabytes. As an example, given a collection named records with the following documents<\/p>\n\n\n\n<p>{ a: 1, count: 4 }<\/p>\n\n\n\n<p>{ a: 1, count: 2 }<\/p>\n\n\n\n<p>{ a: 1, count: 4 }<\/p>\n\n\n\n<p>{ a: 2, count: 3 }<\/p>\n\n\n\n<p>{ a: 2, count: 1 }<\/p>\n\n\n\n<p>{ a: 1, count: 5 }<\/p>\n\n\n\n<p>{ a: 4, count: 4 }<\/p>\n\n\n\n<p>Consider the following group operation which groups documents by the field a, where a is less than 3, and sums the field count for each group<\/p>\n\n\n\n<p>db.records.group( {<\/p>\n\n\n\n<p>key: { a: 1 },<\/p>\n\n\n\n<p>cond: { a: { $lt: 3 } },<\/p>\n\n\n\n<p>reduce: function(cur, result) { result.count += cur.count },<\/p>\n\n\n\n<p>initial: { count: 0 }<\/p>\n\n\n\n<p>} )<\/p>\n\n\n\n<p>The results of this group operation would resemble the following<\/p>\n\n\n\n[<\/p>\n\n\n\n<p>{ a: 1, count: 15 },<\/p>\n\n\n\n<p>{ a: 2, count: 4 }<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Apply for MongoDB Certification Now!!<\/h3>\n\n\n\n<p><a href=\"https:\/\/www.vskills.in\/certification\/databases\/mongodb-server-administrator\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.vskills.in\/certification\/databases\/mongodb-server-administrator<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/www.vskills.in\/certification\/tutorial\/certified-mongodb-professional\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Back to Tutorial<\/strong><\/a><\/h4>\n","protected":false},"excerpt":{"rendered":"<p>Single Purpose Aggregation Operations Aggregation refers to a broad class of data manipulation operations that compute a result based on an input and a specific procedure. MongoDB provides a number of aggregation operations that perform specific aggregation operations on a set of data. Although limited in scope, particularly compared to the aggregation pipeline and map-reduce,&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[73],"tags":[],"class_list":["post-111778","page","type-page","status-publish","hentry","category-mongodb"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Single Purpose Aggregation Operations - Tutorial<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Single Purpose Aggregation Operations - Tutorial\" \/>\n<meta property=\"og:description\" content=\"Single Purpose Aggregation Operations Aggregation refers to a broad class of data manipulation operations that compute a result based on an input and a specific procedure. MongoDB provides a number of aggregation operations that perform specific aggregation operations on a set of data. Although limited in scope, particularly compared to the aggregation pipeline and map-reduce,...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/\" \/>\n<meta property=\"og:site_name\" content=\"Tutorial\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/vskills.in\/\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-12T09:01:35+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/\",\"name\":\"Single Purpose Aggregation Operations - Tutorial\",\"isPartOf\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg\",\"datePublished\":\"2021-03-08T05:07:26+00:00\",\"dateModified\":\"2024-04-12T09:01:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage\",\"url\":\"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg\",\"contentUrl\":\"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Single Purpose Aggregation Operations\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#website\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\",\"name\":\"Tutorial\",\"description\":\"Vskills - A initiative in elearning and certification\",\"publisher\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.vskills.in\/certification\/tutorial\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#organization\",\"name\":\"Vskills\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg\",\"contentUrl\":\"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg\",\"width\":73,\"height\":55,\"caption\":\"Vskills\"},\"image\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/vskills.in\/\",\"https:\/\/x.com\/vskills_in\",\"https:\/\/www.linkedin.com\/company-beta\/1371554\/\",\"https:\/\/www.youtube.com\/channel\/UCMWnscxPwRF_PqXo9B7q_Tw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Single Purpose Aggregation Operations - Tutorial","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/","og_locale":"en_US","og_type":"article","og_title":"Single Purpose Aggregation Operations - Tutorial","og_description":"Single Purpose Aggregation Operations Aggregation refers to a broad class of data manipulation operations that compute a result based on an input and a specific procedure. MongoDB provides a number of aggregation operations that perform specific aggregation operations on a set of data. Although limited in scope, particularly compared to the aggregation pipeline and map-reduce,...","og_url":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/","og_site_name":"Tutorial","article_publisher":"https:\/\/www.facebook.com\/vskills.in\/","article_modified_time":"2024-04-12T09:01:35+00:00","og_image":[{"url":"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg","type":"","width":"","height":""}],"twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/","url":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/","name":"Single Purpose Aggregation Operations - Tutorial","isPartOf":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage"},"image":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage"},"thumbnailUrl":"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg","datePublished":"2021-03-08T05:07:26+00:00","dateModified":"2024-04-12T09:01:35+00:00","breadcrumb":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#primaryimage","url":"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg","contentUrl":"http:\/\/www.vskills.in\/lms\/wp-content\/uploads\/2016\/07\/Image-28-9.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/single-purpose-aggregation-operations\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vskills.in\/certification\/tutorial\/"},{"@type":"ListItem","position":2,"name":"Single Purpose Aggregation Operations"}]},{"@type":"WebSite","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#website","url":"https:\/\/www.vskills.in\/certification\/tutorial\/","name":"Tutorial","description":"Vskills - A initiative in elearning and certification","publisher":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vskills.in\/certification\/tutorial\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#organization","name":"Vskills","url":"https:\/\/www.vskills.in\/certification\/tutorial\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/","url":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg","contentUrl":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg","width":73,"height":55,"caption":"Vskills"},"image":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/vskills.in\/","https:\/\/x.com\/vskills_in","https:\/\/www.linkedin.com\/company-beta\/1371554\/","https:\/\/www.youtube.com\/channel\/UCMWnscxPwRF_PqXo9B7q_Tw"]}]}},"_links":{"self":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/111778","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/comments?post=111778"}],"version-history":[{"count":3,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/111778\/revisions"}],"predecessor-version":[{"id":131999,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/111778\/revisions\/131999"}],"wp:attachment":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/media?parent=111778"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/categories?post=111778"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/tags?post=111778"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}