Table des matières
数据结构还是:
Maison base de données tutoriel mysql [Mongo]分组统计时间aggregate,group,distinct

[Mongo]分组统计时间aggregate,group,distinct

Jun 07, 2016 pm 04:04 PM
mongo 分组 时间 统计

开发中有些按日期记录的记录需要各种维度的统计,按天,按月,按年,按小时,。。分组统计,还有些需要对字段去重统计,在之前的 [Mongo] 按时间分组统计(group时间格式化) 中用group实现了按天的统计,不过使用new Date()方法会有些坑,今天看了下aggreg

开发中有些按日期记录的记录需要各种维度的统计,按天,按月,按年,按小时,。。分组统计,还有些需要对字段去重统计,在之前的 [Mongo] 按时间分组统计(group时间格式化) 中用group实现了按天的统计,不过使用new Date()方法会有些坑,今天看了下aggregate中,使用聚合来写个时间统计。

tips: aggregate 挺复杂,弄明白了再做笔记,现在只是根据需求来查询。

数据结构还是:
/* 0 */
{
  "_id" : ObjectId("541fcc51c6c36038bc6b81cd"),
  "url" : "http://wifi21.com/",
  "addtime" : ISODate("2014-08-19T00:15:02Z")
}

/* 1 */
{
  "_id" : ObjectId("541fcc51c6c36038bc6b81ce"),
  "url" : "http://meiwen.me/src/index.html",
  "addtime" : ISODate("2014-08-19T00:15:07Z")
}
...
Copier après la connexion
按月统计pv值(相当于group)
db.msds_accessrecord.aggregate([
    {$group: {
        _id: {
            "$month": "$addtime"
        }, 
     pv: {$sum: 1}}
    },
    {$sort: {"_id": 1}}
]);
Copier après la connexion

统计结果

/* 0 */
{
    "result" : [ 
        {
            "_id" : 8,
            "pv" : 583
        }, 
        {
            "_id" : 9,
            "pv" : 1399
        }
    ],
    "ok" : 1
} 
Copier après la connexion

按月统计url值,重复url去掉,这里只是做个演示,可能统计没什么意义 (相当于group+distinct)

db.msds_accessrecord.aggregate([
    {$group: {
        _id: {
            "month": {"$month": "$addtime"},
            "url": "$url"
        }
    }},
    {$group: {_id:"$_id.month", uv: {$sum: 1}}},
    {$sort: {"_id":1}}
]);
Copier après la connexion
这里用到了管道,排序,聚合

统计结果

/* 0 */
{
    "result" : [ 
        {
            "_id" : 8,
            "uv" : 41
        }, 
        {
            "_id" : 9,
            "uv" : 134
        }
    ],
    "ok" : 1
}
Copier après la connexion

引用:

聚合使用方法: http://docs.mongodb.org/manual/reference/method/db.collection.aggregate/#db.collection.aggregate

日期聚合函数: http://docs.mongodb.org/manual/reference/operator/aggregation-date/

本文出自 “orangleliu笔记本” 博客,请务必保留此出处http://blog.csdn.net/orangleliu/article/details/39932081

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Combien coûte un panneau lumineux Douyin niveau 10 ? Combien de jours faut-il pour créer un panneau de fan de niveau 10 ? Combien coûte un panneau lumineux Douyin niveau 10 ? Combien de jours faut-il pour créer un panneau de fan de niveau 10 ? Mar 11, 2024 pm 05:37 PM

Sur la plateforme Douyin, de nombreux utilisateurs sont impatients d'obtenir une certification de niveau, et le panneau lumineux de niveau 10 montre l'influence et la reconnaissance de l'utilisateur sur Douyin. Cet article examinera le prix des cartes lumineuses Douyin niveau 10 et le temps nécessaire pour atteindre ce niveau afin d'aider les utilisateurs à mieux comprendre le processus. 1. Combien coûte un panneau lumineux Douyin de niveau 10 ? Le prix du panneau lumineux à 10 niveaux de Douyin varie en fonction des fluctuations du marché et de l'offre et de la demande. Le prix général varie de quelques milliers de yuans à dix mille yuans. Ce prix comprend principalement le coût de l'enseigne lumineuse elle-même et les éventuels frais de service. Les utilisateurs peuvent acheter des panneaux lumineux de niveau 10 via les canaux officiels de Douyin ou des agences de services tierces, mais ils doivent faire attention aux canaux légaux lors de l'achat pour éviter les transactions fausses ou frauduleuses. 2. Combien de jours faut-il pour créer un panneau de fan de niveau 10 ? Atteindre le panneau lumineux de niveau 10

Combien de temps faut-il pour nettoyer Elden Ring ? Combien de temps faut-il pour nettoyer Elden Ring ? Mar 11, 2024 pm 12:50 PM

Les joueurs peuvent découvrir l'intrigue principale du jeu et collecter des succès de jeu lorsqu'ils jouent dans Elden's Circle. De nombreux joueurs ne savent pas combien de temps il faut pour terminer Elden's Circle. Le processus d'autorisation du joueur est de 30 heures. Combien de temps faut-il pour nettoyer Elden Ring ? Réponse : 30 heures. 1. Bien que ce délai de dédouanement de 30 heures ne fasse pas référence à un speed pass de type maître, il omet également de nombreux processus. 2. Si vous souhaitez obtenir une meilleure expérience de jeu ou découvrir l'intrigue complète, vous devrez certainement consacrer plus de temps à la durée. 3. Si les joueurs les récupèrent tous, cela prendra environ 100 à 120 heures. 4. Si vous prenez uniquement la ligne principale pour brosser BOSS, cela prendra environ 50 à 60 heures. 5. Si vous voulez tout vivre : 150 heures de temps de base.

Comment implémenter des statistiques et des analyses de données dans Uniapp Comment implémenter des statistiques et des analyses de données dans Uniapp Oct 24, 2023 pm 12:37 PM

Comment implémenter les statistiques et l'analyse des données dans uniapp 1. Introduction générale Les statistiques et l'analyse des données constituent une partie très importante du processus de développement d'applications mobiles. Grâce aux statistiques et à l'analyse du comportement des utilisateurs, les développeurs peuvent avoir une compréhension approfondie des préférences et de l'utilisation des utilisateurs. habitudes. Optimisant ainsi la conception du produit et l’expérience utilisateur. Cet article présentera comment implémenter des statistiques de données et des fonctions d'analyse dans uniapp, et fournira quelques exemples de code spécifiques. 2. Choisissez les outils de statistiques et d'analyse de données appropriés. La première étape pour mettre en œuvre les statistiques et l'analyse de données dans uniapp consiste à choisir les outils de statistiques et d'analyse de données appropriés.

Comment régler l'heure de publication des ouvrages sur Xiaohongshu ? L'heure de publication de l'œuvre est-elle exacte ? Comment régler l'heure de publication des ouvrages sur Xiaohongshu ? L'heure de publication de l'œuvre est-elle exacte ? Mar 24, 2024 pm 01:31 PM

Xiaohongshu, plateforme pleine de vie et de partage de connaissances, permet à de plus en plus de créateurs d'exprimer librement leurs opinions. Afin d'attirer plus d'attention et de likes sur Xiaohongshu, outre la qualité du contenu, le moment de publication des œuvres est également crucial. Alors, comment fixer l'heure à laquelle Xiaohongshu publie ses œuvres ? 1. Comment régler l'heure de publication des ouvrages sur Xiaohongshu ? 1. Comprendre le temps d'activité des utilisateurs. Tout d'abord, il est nécessaire de clarifier le temps d'activité des utilisateurs de Xiaohongshu. De manière générale, entre 20h et 22h et les après-midi du week-end sont les moments où l'activité des utilisateurs est forte. Cependant, cette période varie également en fonction de facteurs tels que le segment d'audience et la géographie. Par conséquent, afin de mieux appréhender la période active des utilisateurs, il est recommandé de procéder à une analyse plus détaillée des habitudes comportementales des différents groupes. En comprenant la vie des utilisateurs

Comment utiliser les instructions SQL pour l'agrégation de données et les statistiques dans MySQL ? Comment utiliser les instructions SQL pour l'agrégation de données et les statistiques dans MySQL ? Dec 17, 2023 am 08:41 AM

Comment utiliser les instructions SQL pour l'agrégation de données et les statistiques dans MySQL ? L'agrégation des données et les statistiques sont des étapes très importantes lors de l'analyse des données et des statistiques. En tant que puissant système de gestion de bases de données relationnelles, MySQL fournit une multitude de fonctions d'agrégation et de statistiques, qui peuvent facilement effectuer des opérations d'agrégation de données et de statistiques. Cet article présentera la méthode d'utilisation des instructions SQL pour effectuer l'agrégation de données et les statistiques dans MySQL, et fournira des exemples de code spécifiques. 1. Utilisez la fonction COUNT pour compter. La fonction COUNT est la plus couramment utilisée.

Explication détaillée des techniques de visualisation de l'heure des fichiers Linux Explication détaillée des techniques de visualisation de l'heure des fichiers Linux Feb 21, 2024 pm 01:15 PM

Explication détaillée des techniques d'affichage de l'heure des fichiers Linux Dans les systèmes Linux, les informations sur l'heure des fichiers sont très importantes pour la gestion des fichiers et le suivi des modifications. Le système Linux enregistre les informations de modification de fichier via trois attributs temporels principaux, à savoir l'heure d'accès (atime), l'heure de modification (mtime) et l'heure de modification (ctime). Cet article explique comment afficher et gérer ces informations d'heure de fichier et fournit des exemples de code spécifiques. 1. Vérifiez les informations d'heure du fichier en utilisant la commande ls avec le paramètre -l pour répertorier les fichiers.

Implémentation de fonctions de diagrammes linéaires et circulaires dans les graphiques statistiques Vue Implémentation de fonctions de diagrammes linéaires et circulaires dans les graphiques statistiques Vue Aug 19, 2023 pm 06:13 PM

Les fonctions de graphique linéaire et circulaire des graphiques statistiques Vue sont implémentées dans le domaine de l'analyse et de la visualisation des données. Les graphiques statistiques sont un outil très couramment utilisé. En tant que framework JavaScript populaire, Vue fournit des méthodes pratiques pour implémenter diverses fonctions, notamment l'affichage et l'interaction de graphiques statistiques. Cet article expliquera comment utiliser Vue pour implémenter des fonctions linéaires et circulaires, et fournira des exemples de code correspondants. Implémentation de la fonction de graphique linéaire Un graphique linéaire est un type de graphique utilisé pour afficher les tendances et les changements dans les données. Dans Vue, nous pouvons utiliser d'excellents

Comment créer rapidement un système de graphiques statistiques sous le framework Vue Comment créer rapidement un système de graphiques statistiques sous le framework Vue Aug 21, 2023 pm 05:48 PM

Comment créer rapidement un système de graphiques statistiques sous le framework Vue. Dans les applications Web modernes, les graphiques statistiques sont un composant essentiel. En tant que framework frontal populaire, Vue.js fournit de nombreux outils et composants pratiques qui peuvent nous aider à créer rapidement un système de graphiques statistiques. Cet article expliquera comment utiliser le framework Vue et certains plug-ins pour créer un système de graphiques statistiques simple. Tout d'abord, nous devons préparer un environnement de développement Vue.js, y compris l'installation de l'échafaudage Vue et de certains plug-ins associés. Exécutez la commande suivante dans la ligne de commande

See all articles