Maison base de données tutoriel mysql [教程]MongoDB 从入门到进阶 (aggregation数据库状态)

[教程]MongoDB 从入门到进阶 (aggregation数据库状态)

Jun 07, 2016 pm 05:56 PM
mongodb 入门 教程 nombre 进阶

下载地址: GitHub:https://github.com/magicdict/MagicMongoDBTool 在开始介绍这节之前,我来说说我开发这个工具的意义。 我不敢保证以后MongoDB可以大红大紫,也无法保证MongoDB以后会分享很多很多市场份额。 现在开发这个东西,一年后可能Mongo倒闭了,这

    下载地址:

     GitHub:  https://github.com/magicdict/MagicMongoDBTool

     在开始介绍这节之前,我来说说我开发这个工具的意义。

     我不敢保证以后MongoDB可以大红大紫,也无法保证MongoDB以后会分享很多很多市场份额。

     现在开发这个东西,一年后可能Mongo倒闭了,这个工具就是一个垃圾。一年后,Mongo修成正果,香港服务器,这个工具就是香饽饽。

     等所有人都觉得这个东西会火,你才去关注,开发工具,就晚了。花点业余时间,开发Mongo工具的同时,香港服务器租用,最主要去学习一下大数据的一些思想,例如副本,分片概念。

     还有就是阶层数据库的一些实现的方法。当然,由于3年前才开始从VB.NET转C#的,也希望通过多些编码将C#用身体记住。

[aggregation Framework]

例子1

aggregation Framework 是MongoDB的一个功能强大的统计框架,这里就演示一下这个框架的使用方法。

首先,我们新建一个aggregation数据集。然后再按照官方文档的样子,使用MongoCola插入一个文档。(将下面这段JSON直接粘贴到新建文档的窗体里面就可以了)

{ title : "this is my title" , author : "bob" , posted : new Date() , pageViews : 5 , tags : [ "fun" , "good" , "fun" ] , comments : [ { author :"joe" , text : "this is cool" } , { author :"sam" , text : "this is bad" } ], other : { foo : 5 } }

 

1.$project

这个操作符号,可以用来做Select 的操作。用来指定显示的列。

{ $project : { title : 1 , author : 1 }}

这里表示我们只是需要title和author列的信息。

这里的参数1:表示 0:非表示。 _id是一个默认的表示项目,我们可以通过将_id设置为0,告诉系统不表示这个项目。

{ $project : { _id : 0 , title : 1 , author : 1 }}

当然,你也可以新建一个字段,例如一个doctoredPageViews字段,这个字段是在原有字段的基础上加工而成的值。

就如 SQL中的,Select (pageViews + 10 As doctoredPageViews) from table

{ $project : { title : 1, doctoredPageViews : { $add:["$pageViews", 10] } }}

 当然你也可以重新命名列名

{ $project : { title : 1 , page_views : "$pageViews" , bar : "$other.foo" }}

最后你也可以通过Project操作符,来构建你想要的文档结果。下面这个例子里面的Status就是一个新建的子文档

{ $project : { title : 1 , stats : { pv : "$pageViews", foo : "$other.foo", dpv : { $add:["$pageViews", 10] } } }}

2$match这个操作符号,有点类似于Select文的Where条件。例如我们想寻找author是bob的记录:

{ $match : { author : "bob" } }

这个Aggregate框架里面的各种操作符号是可以任意组合的。我们可以既有match操作,又有project操作。

这里我们用工具将两种操作的条件分别加上。

注意:这里我们已经添加了2个条件了。第一个是match,第二个是project。

 

例子2

下面是例子的测试数据

{ "_id" : "1", "User" : "Tom", "Country" : "Finland", "Count" : 1 } { "_id" : "2", "User" : "Tom", "Country" : "Finland", "Count" : 3 } { "_id" : "3", "User" : "Tom", "Country" : "Finland", "Count" : 2 } { "_id" : "4", "User" : "Mary", "Country" : "Sweden", "Count" : 1 } { "_id" : "5", "User" : "Mary", "Country" : "Sweden", "Count" : 7 }

 

我们找一下是User是Tom,Count >= 2 的记录

{ $match : { User: "Tom", Count:{"$gte": 2} } }

4

关于操作符号: 

3 $Group

我们对于User进行Group操作,并且对于Count进行合计

注意,这里必须要有一个_id字段来表示Group的条件

{ $group : { _id : { "MyUser": "$User" } TotalCount : { $sum : "$Count" } } }

结果就是Mary的合计值是8,Tom则是6.

MyUser SUM(Count) AS TotalCount

 

我们再次添加一条记录

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)

Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Top 10 du classement mondial de la plate-forme de trading de devises virtuels numériques (2025 classement faisant autorité) Mar 06, 2025 pm 04:36 PM

En 2025, les plateformes mondiales de trading de devises virtuelles numériques sont farouchement compétitives. OKX se classe d'abord avec sa forte force technique et sa stratégie de fonctionnement mondiale, et Binance suit de près avec une liquidité élevée et des frais faibles. Des plates-formes telles que Gate.io, Coinbase et Kraken sont à l'avant-garde avec leurs avantages respectifs. La liste couvre les plateformes de trading telles que Huobi, Kucoin, BitFinex, Crypto.com et Gemini, chacune avec ses propres caractéristiques, mais l'investissement devrait être prudent. Pour choisir une plate-forme, vous devez prendre en compte des facteurs tels que la sécurité, la liquidité, les frais, l'expérience utilisateur, la sélection des devises et la conformité réglementaire, et investir rationnellement

Top 10 des plates-formes de trading de devises numériques La dernière liste des 10 principales plateformes de trading de devises numériques Top 10 des plates-formes de trading de devises numériques La dernière liste des 10 principales plateformes de trading de devises numériques Mar 17, 2025 pm 05:57 PM

Top 10 des plates-formes de trading de devises numériques: 1. Okx, 2. Binance, 3. Gate.io, 4. Huobi Global, 5. Kraken, 6. Coinbase, 7. Kucoin, 8. Bitfinex, 9. Crypto.com, 10. Gemini, ces échanges ont leurs propres caractéristiques et les utilisateurs peuvent choisir la plate-forme qui leur convient sur des facteurs tels que la sécurité, les frais de sécurité, les frais de la sécurité, les frais de sécurité, les arêtes de la sécurité.

Top 10 des échanges dans le cercle des devises en 2025 Dernier classement des applications de devises numériques Top 10 des échanges dans le cercle des devises en 2025 Dernier classement des applications de devises numériques Feb 27, 2025 pm 06:33 PM

Classement des dix principales plates-formes de trading de devises virtuelles (dernier en 2025): Binance: le leader mondial, la liquidité élevée et la réglementation ont attiré l'attention. OKX: grande base d'utilisateurs, prend en charge plusieurs devises et fournit un trading à effet de levier. GATE.IO: une échange senior, avec une variété de méthodes de paiement de la monnaie fiduciaire, fournissant une variété de paires de trading et de produits d'investissement. Bitget: Échange de dérivés, liquidité élevée, frais faibles. Huobi: Un ancien échange qui prend en charge une variété de devises et de paires de trading. Coinbase: un échange américain bien connu, strictement réglementé. Phemex et ainsi de suite.

Comment transférer des pièces à Binance? Comment mentionner les actifs cryptographiques en HTX à la plate-forme Binance? Comment transférer des pièces à Binance? Comment mentionner les actifs cryptographiques en HTX à la plate-forme Binance? Mar 03, 2025 pm 08:51 PM

Guide de transfert de Binance Huobi: Sécurité et transférer facilement vos actifs cryptographiques, de nombreux investisseurs utilisent en même temps Huobi et Binance. Cet article vous guidera comment transférer en toute sécurité les actifs cryptographiques sur Huobi (HTX), tels que Trump et USDT, à la plate-forme Binance. Binance est populaire pour sa haute sécurité, ses paires de devises et de trading riches et son volume commercial de pointe. Les avantages de Binance Exchange: le volume de trading numéro un au monde, représentant 50% du marché mondial; Ce tutoriel prendra Trump et USDT comme exemples

Top 10 des plateformes de trading pour les applications de devises numériques, recommandations d'applications de plateforme de spéculation de la devise régulières Top 10 des plateformes de trading pour les applications de devises numériques, recommandations d'applications de plateforme de spéculation de la devise régulières Mar 07, 2025 pm 06:51 PM

Cet article recommande de dix applications de transactions numériques: 1. Lorsque vous choisissez une plate-forme, vous devez prendre en compte des facteurs tels que la sécurité, la liquidité, les frais de transaction, la sélection des devises, l'interface utilisateur, le support du service client et la conformité réglementaire, et évaluer soigneusement les risques et ne jamais suivre aveuglément la tendance.

Comment assurer la haute disponibilité de MongoDB sur Debian Comment assurer la haute disponibilité de MongoDB sur Debian Apr 02, 2025 am 07:21 AM

Cet article décrit comment construire une base de données MongoDB hautement disponible sur un système Debian. Nous explorerons plusieurs façons de garantir que la sécurité des données et les services continueront de fonctionner. Stratégie clé: réplicaset: réplicaset: Utilisez des répliques pour obtenir la redondance des données et le basculement automatique. Lorsqu'un nœud maître échoue, l'ensemble de répliques élise automatiquement un nouveau nœud maître pour assurer la disponibilité continue du service. Sauvegarde et récupération des données: utilisez régulièrement la commande Mongodump pour sauvegarder la base de données et formuler des stratégies de récupération efficaces pour faire face au risque de perte de données. Surveillance et alarmes: déploier les outils de surveillance (tels que Prometheus, Grafana) pour surveiller l'état de course de MongoDB en temps réel, et

Comment configurer l'expansion automatique de MongoDB sur Debian Comment configurer l'expansion automatique de MongoDB sur Debian Apr 02, 2025 am 07:36 AM

Cet article présente comment configurer MongoDB sur Debian System pour réaliser une expansion automatique. Les étapes principales incluent la configuration de l'ensemble de répliques MongoDB et de la surveillance de l'espace disque. 1. Installation de MongoDB Tout d'abord, assurez-vous que MongoDB est installé sur le système Debian. Installez à l'aide de la commande suivante: SudoaptupDaSudoaptInstall-myongoDB-Org 2. Configuration de la réplique MongoDB Ensemble de répliques MongoDB assure la haute disponibilité et la redondance des données, ce qui est la base de la réalisation d'une expansion de capacité automatique. Démarrer le service MongoDB: Sudosystemctlstartmongodsudosys

Les dix premiers de la plate-forme de trading de devises virtuelles du monde appliquent un didacticiel de téléchargement et d'installation authentique Les dix premiers de la plate-forme de trading de devises virtuelles du monde appliquent un didacticiel de téléchargement et d'installation authentique Mar 12, 2025 pm 05:33 PM

Cet article fournit des méthodes de téléchargement d'applications mobiles Android et Apple pour les plates-formes de trading de devises numériques traditionnelles telles que Binance, Okx, Gate.io, Huobi Global, Coinbase, Kucoin, Kraken et BitFinex. Qu'il s'agisse d'un utilisateur Android ou d'un utilisateur d'Apple, vous pouvez facilement trouver le lien de téléchargement d'application officiel pour la plate-forme correspondante et compléter l'installation en fonction des étapes. L'article fournit des conseils détaillés sur la recherche et le téléchargement sur leurs sites Web ou magasins d'applications officiels respectifs, et fournit des instructions sur les étapes spéciales pour installer des fichiers APK sur Android, afin que les utilisateurs puissent les télécharger et les utiliser rapidement et facilement.

See all articles