mongodb入门-9查询4
mongodb入门-9查询4 mongodb入门-8查询3 http://www.2cto.com/database/201305/212158.html $elemMatch 匹配内嵌文章中的数据,我们知道在mongodb中可以使用内嵌文档,但是这时候根据内嵌文档的内容查询使用原先介绍的方法,可能就不是那么方便了,好在mongodb已
mongodb入门-9查询4
mongodb入门-8查询3
http://www.2cto.com/database/201305/212158.html
$elemMatch
匹配内嵌文章中的数据,我们知道在mongodb中可以使用内嵌文档,但是这时候根据内嵌文档的内容查询使用原先介绍的方法,可能就不是那么方便了,好在mongodb已经考虑了,为我们提供了$elemMatch方法.例子:
[html]
> db.user.find()
{ "_id" : ObjectId("5198c286c686eb50e2c843b2"), "name" : "user0", "age" : 0 }
{ "_id" : ObjectId("5198c286c686eb50e2c843b3"), "name" : "user1", "age" : 1 }
{ "_id" : ObjectId("5198c286c686eb50e2c843b4"), "name" : "user2", "age" : 2 }
{ "_id" : ObjectId("5198c286c686eb50e2c843b5"), "name" : "user3", "age" : 1 }
{ "_id" : ObjectId("5198c286c686eb50e2c843b6"), "name" : "user4", "age" : 1 }
{ "_id" : ObjectId("5198c286c686eb50e2c843b7"), "name" : "user5", "age" : 2 }
{ "_id" : ObjectId("51997c702b76790566165e48"), "name" : "xiangyue", "age" : 23, "title" : [ { "content" : "aaa" }, {
"content" : "bbb" }, { "discuss" : "cc" } ] }
{ "_id" : ObjectId("51997c9f2b76790566165e49"), "name" : "xiangyue", "age" : 23, "title" : [ { "content" : "dd" }, {
"content" : "ee" }, { "discuss" : "ff" } ] }
> db.user.find({title:{$elemMatch : {content : "aaa"}}}) -->查找title中的content字段为aaa的文档
{ "_id" : ObjectId("51997c702b76790566165e48"), "name" : "xiangyue", "age" : 23, "title" : [ { "content" : "aaa" }, {
"content" : "bbb" }, { "discuss" : "cc" } ] }
游标
mongodb中提供了像关系型数据库中的游标操作.首先我们获取一个游标,获取游标很简单,只需要将我们以前学过的查询方法赋值给一个变量就可以了:
[html]
var cursor = db.test.find()
我们如果在命令行直接输入cursor,将会执行这个查询打印结果,这个时候我们再去执行cursor的时候将神马都不会返回了,因为这个游标已经使用完了,当然我们不想这样使用游标,我们可以像下面那样使用游标:
[html]
> while(cursor.hasNext()){ var current = cursor.next(); print("age=" + current.age); }
age=1
age=2
age=3
age=4
age=5
当然我们可以使用游标的forEach方法,如下:
[html]
> var cursor = db.test.find()
> cursor.forEach(function(obj){
... print("age=" + obj.age);
... });
age=1
age=2
age=3
age=4
age=5
同样游标可以结合sort/skip/limit等方法一同使用,换句话说以前学的基本所有的查询都可以跟游标结合使用.
count 计算查询结果的数目
这个比较简单,在以前的查询的命令后面再加上.count()就可以了.
[html]
> db.test.find()
{ "_id" : 1, "name" : "user_1", "age" : 1 }
{ "_id" : 2, "name" : "user_2", "age" : 2 }
{ "_id" : 3, "name" : "user_3", "age" : 3 }
{ "_id" : 4, "name" : "user_4", "age" : 4 }
{ "_id" : 5, "name" : "user_5", "age" : 5 }
> db.test.find().count()
5
null查询
例如下面文档我们只想查出y值为null的文档,
[html]
> db.test2.find()
{ "_id" : ObjectId("519984432b76790566165e4c"), "x" : null }
{ "_id" : ObjectId("5199844c2b76790566165e4d"), "y" : null, "x" : "test" }
按照我们原来学过的使用下的方式查询结果不是我们想要的:
[html]
> db.test2.find({y:null}) -->我们发现mongodb对于y不存在也会给查出来
{ "_id" : ObjectId("519984432b76790566165e4c"), "x" : null }
{ "_id" : ObjectId("5199844c2b76790566165e4d"), "y" : null, "x" : "test" }
这里提供一下两种方法查询
[html]
> db.test2.find({y:{$type:10}}) -->明确指出其类型
{ "_id" : ObjectId("5199844c2b76790566165e4d"), "y" : null, "x" : "test" }
> db.test2.find({y:null,y:{$exists:1}}) -->查找null 但是同时y值必须存在
{ "_id" : ObjectId("5199844c2b76790566165e4d"), "y" : null, "x" : "test" }

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Kimi: In nur einem Satz, in nur zehn Sekunden ist ein PPT fertig. PPT ist so nervig! Um ein Meeting abzuhalten, benötigen Sie einen PPT; um einen wöchentlichen Bericht zu schreiben, müssen Sie einen PPT vorlegen, auch wenn Sie jemanden des Betrugs beschuldigen PPT. Das College ähnelt eher dem Studium eines PPT-Hauptfachs. Man schaut sich PPT im Unterricht an und macht PPT nach dem Unterricht. Als Dennis Austin vor 37 Jahren PPT erfand, hatte er vielleicht nicht damit gerechnet, dass PPT eines Tages so weit verbreitet sein würde. Wenn wir über unsere harte Erfahrung bei der Erstellung von PPT sprechen, treiben uns Tränen in die Augen. „Es dauerte drei Monate, ein PPT mit mehr als 20 Seiten zu erstellen, und ich habe es Dutzende Male überarbeitet. Als ich das PPT sah, musste ich mich übergeben.“ war PPT.“ Wenn Sie ein spontanes Meeting haben, sollten Sie es tun

Herausgeber des Machine Power Report: Yang Wen Die Welle der künstlichen Intelligenz, repräsentiert durch große Modelle und AIGC, hat unsere Lebens- und Arbeitsweise still und leise verändert, aber die meisten Menschen wissen immer noch nicht, wie sie sie nutzen sollen. Aus diesem Grund haben wir die Kolumne „KI im Einsatz“ ins Leben gerufen, um detailliert vorzustellen, wie KI durch intuitive, interessante und prägnante Anwendungsfälle für künstliche Intelligenz genutzt werden kann, und um das Denken aller anzuregen. Wir heißen Leser auch willkommen, innovative, praktische Anwendungsfälle einzureichen. Videolink: https://mp.weixin.qq.com/s/2hX_i7li3RqdE4u016yGhQ Vor kurzem wurde der Lebens-Vlog eines allein lebenden Mädchens auf Xiaohongshu populär. Eine Animation im Illustrationsstil, gepaart mit ein paar heilenden Worten, kann in nur wenigen Tagen leicht erlernt werden.

Als Sora nicht herauskam, nutzten die Gegner von OpenAI ihre Waffen, um die Straßen zu zerstören. Wenn Sora nicht zur Nutzung geöffnet ist, wird es wirklich gestohlen! Heute hat das Startup LumaAI aus San Francisco einen Trumpf ausgespielt und eine neue Generation des KI-Videogenerierungsmodells DreamMachine auf den Markt gebracht. Kostenlos und für alle verfügbar. Berichten zufolge kann das Modell auf Basis einfacher Textbeschreibungen hochwertige, realistische Videos generieren, mit vergleichbaren Effekten wie Sora. Sobald die Nachricht bekannt wurde, strömten zahlreiche Benutzer auf die offizielle Website, um es auszuprobieren. Obwohl Beamte behaupten, dass das Modell in nur zwei Minuten Videos mit 120 Bildern erzeugen kann, warten viele Benutzer aufgrund des Anstiegs der Besuche stundenlang auf die offizielle Website. BarkleyDai, Lumas Leiter für Produktwachstum, musste sich auf Discord äußern

Die Matrix ist schwer zu verstehen, kann aber anders ausfallen, wenn man sie aus einer anderen Perspektive betrachtet. Wenn wir Mathematik lernen, sind wir oft frustriert über die Schwierigkeit und Abstraktheit des gelernten Wissens, aber manchmal können wir einfach durch einen Perspektivenwechsel eine einfache und intuitive Lösung für das Problem finden. Als wir zum Beispiel als Kinder die Formel für die Quadratsumme (a+b)² lernten, verstanden wir vielleicht nicht, warum sie gleich a²+2ab+b² ist. Wir wussten nur, dass sie so geschrieben wurde das Buch und der Lehrer forderten uns auf, uns das so zu merken; bis wir eines Tages dieses animierte Bild sahen: Mir wurde plötzlich klar, dass wir es aus einer geometrischen Perspektive verstehen können! Jetzt tritt dieses Gefühl der Erleuchtung erneut auf: Eine nichtnegative Matrix kann äquivalent in den entsprechenden gerichteten Graphen umgewandelt werden! Wie in der folgenden Abbildung gezeigt, kann die 3 × 3-Matrix auf der linken Seite tatsächlich vorhanden sein

Am 31. Juli um 14:00 Uhr (Pekinger Zeit) wurde das neueste Mitglied der XREAL-Serie von AR-Brillen, XREAL Air2 Ultra, offiziell in China eingeführt. Es ist derzeit auf JD.com, Tmall, Douyin und anderen Plattformen verfügbar ein anfänglicher Preis von 3.999 Yuan. Diese AR-Brille ist ein Flaggschiffprodukt, das sich hauptsächlich an die Entwicklergemeinschaft richtet. Ziel ist es, die Schwelle für Entwickler zum Einstieg in die räumliche Datenverarbeitung zu senken, Innovationen im Bereich der räumlichen Datenverarbeitung zu fördern und ein florierenderes AR-Ökosystem zu schaffen. Befähigung von Entwicklern mit sechs Kernfunktionen Als zweite 6DoF-Brille (Six Degrees of Freedom, sechs Freiheitsgrade) von XREAL ist die XREAL Air2 Ultra derzeit die einzige in der Branche, die zwei Sensoren zur Umgebungserkennung (SLAM-Kamera) verwendet.

In diesem Artikel wird vorgestellt, wie MongoDB im Debian -System konfiguriert wird, um eine automatische Expansion zu erzielen. Die Hauptschritte umfassen das Einrichten der MongoDB -Replikat -Set und die Überwachung des Speicherplatzes. 1. MongoDB Installation Erstens stellen Sie sicher, dass MongoDB im Debian -System installiert ist. Installieren Sie den folgenden Befehl: sudoaptupdatesudoaptinstall-emongoDB-org 2. Konfigurieren von MongoDB Replika-Set MongoDB Replikate sorgt für eine hohe Verfügbarkeit und Datenreduktion, was die Grundlage für die Erreichung der automatischen Kapazitätserweiterung darstellt. Start MongoDB Service: SudosystemctlstartMongodsudosysys

In diesem Artikel wird beschrieben, wie man eine hoch verfügbare MongoDB -Datenbank für ein Debian -System erstellt. Wir werden mehrere Möglichkeiten untersuchen, um sicherzustellen, dass die Datensicherheit und -Dienste weiter funktionieren. Schlüsselstrategie: ReplicaSet: Replicaset: Verwenden Sie Replikaten, um Datenreduktion und automatisches Failover zu erreichen. Wenn ein Master -Knoten fehlschlägt, wählt der Replikate -Set automatisch einen neuen Masterknoten, um die kontinuierliche Verfügbarkeit des Dienstes zu gewährleisten. Datensicherung und Wiederherstellung: Verwenden Sie den Befehl mongodump regelmäßig, um die Datenbank zu sichern und effektive Wiederherstellungsstrategien zu formulieren, um das Risiko eines Datenverlusts zu behandeln. Überwachung und Alarme: Überwachungsinstrumente (wie Prometheus, Grafana) bereitstellen, um den laufenden Status von MongoDB in Echtzeit zu überwachen, und

Es ist unmöglich, das MongoDB -Passwort direkt über Navicat anzuzeigen, da es als Hash -Werte gespeichert ist. So rufen Sie verlorene Passwörter ab: 1. Passwörter zurücksetzen; 2. Überprüfen Sie die Konfigurationsdateien (können Hash -Werte enthalten). 3. Überprüfen Sie Codes (May Hardcode -Passwörter).
