MongoDB文檔查詢

一、實驗目的

1.? 理解MongoDB文檔數據庫的基本概念和特性。

2.? 掌握在MongoDB中創建集合和插入文檔數據的方法。

3.? 學習使用MongoDB進行文檔查詢操作,包括查詢、過濾和排序等。

二、實驗環境準備

1.? JAVA環境準備:確保Java Development Kit (JDK) 已安裝并配置好環境變量。

2.? Hadoop環境準備:安裝并配置Hadoop環境,確保Hadoop的各個組件可以在偽分布式模式下運行。

三、實驗教材參考

《大數據存儲》,譚旭,人民郵電出版社,2022,ISBN 978-7-115-59414-3。

四、實驗內容與步驟

1、創建集合

在MongoDB中創建一個新的數據集合,用于存儲實驗數據

2、插入文檔數據

將至少三個文檔插入到所創建的數據集合中,每個文檔包含不同的字段和數據類型。

db.collection.insert([{name: "John Doe",???????????age: 29,????????????????????hobbies: ["reading", "hiking"],isEmployed: true,???????????joinDate: new Date()????????},{title: "MongoDB Basics",????pages: 250,?????????????????author: {???????????????????firstName: "Jane",lastName: "Smith"},published: true,????????????price: 19.99,???????????????tags: ["database", "mongodb", "tutorial"]},{productName: "Smartphone",??stock: 500,?????????????????specifications: {???????????brand: "TechBrand",model: "X100",features: ["5G", "128GB Storage", "Waterproof"]},available: false,???????????releaseDate: ISODate("2023-11-01T00:00:00Z")}])

3、文檔查詢操作

(1)查詢集合中的所有文檔:db.collection.find()

(2)根據特定條件查找文檔

查找“name”為"John Doe"的文檔:db.collection.find({ name: "John Doe" })

查詢“age”大于25的文檔:db.collection.find({ age: { $gt: 25 } }).pretty()

(3)對查詢結果進行排序,展示文檔排序的功能

按age升序排序:db.collection.find({ age: { $exists: true } }).sort({ age: 1 }).pretty()

按price降序排序:db.collection.find({ price: { $exists: true } }).sort({ price: -1 }).pretty()

(4)根據條件過濾文檔

查找stock大于等于 100 的文檔:db.collection.find({ stock: { $gte: 100 } }).pretty()

查找available為false的文檔:db.collection.find({ available: false }).pretty()

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/66872.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/66872.shtml
英文地址,請注明出處:http://en.pswp.cn/web/66872.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

速通Docker === 使用最佳實踐總結

目錄 主要使用步驟 1. 命令 2. 網絡 3. 存儲 卷存儲(Volumes) 目錄掛載(Bind Mounts) 比較 4. 環境變量 5. 端口 示例:啟動 MySQL 容器 解釋: 總結 Docker 是一個開源的應用容器引擎&#xff0…

Postgresql源碼(140)理解PG的編譯流程(make、Makefile、Makefile.global.in)

PG16 PG中使用的makefile看起來代碼比較多,但是實際邏輯比較簡單,這里做一些抽象總結。 總結 Makefile.global.in的$(recurse)宏自動生成了target,可以方便的進入內存目錄進行編譯。 all: all-common-recurse all-common-recurse: submak…

c語言中的數組(上)

數組的概念 數組是?組相同類型元素的集合; 數組中存放的是1個或者多個數據,但是數組元素個數不能為0。 數組中存放的多個數據,類型是相同的。 數組分為?維數組和多維數組,多維數組?般?較多?的是?維數組。 數組創建 在C語言…

戴爾電腦設置u盤啟動_戴爾電腦設置u盤啟動多種方法

最近有很多網友問,戴爾臺式機怎么設置u盤啟動,特別是近兩年的戴爾臺式機比較復雜,有些網友不知道怎么設置,其實設置u盤啟動有兩種方法,下面小編教大家戴爾電腦設置u盤啟動方法。 戴爾電腦設置u盤啟動方法一、戴爾進入b…

2【選修】再探寶可夢、數碼寶貝分類器

1 Pokemon/Digimon Classifier 1.1 Observation 1.2 Function 1.3 Loss 1.4 Training Examples – OOPS what do we want? 2 What is the probability of sampling bad D t r a i n D_{train} Dtrain? 2.1 Theroy – Larger N N N smaller ∣ H ∣ |H| ∣H∣ 2.2…

微信小程序中實現背景圖片完全覆蓋顯示,可以通過設置CSS樣式來實現

wxml頁面代碼 <view class"beijing"></view>wxss樣式代碼 /* pages/beiJing/beiJing.wxss */ .beijing {background-image: url("https://www.qipa250.com/qipa.jpg");/* 定位&#xff1a;絕對定位 */position: absolute;/* 上下左右都定位到…

Mongodb 慢查詢日志分析 - 1

Mongodb 慢查詢日志分析 使用 mloginfo 處理過的日志會在控制臺輸出, 顯示還是比較友好的. 但是如果內容較大, 就不方便查看了, 如果可以導入到 excel 就比較方便篩選/排序. 但是 mloginfo 并沒有提供生成到 excel 的功能. 可以通過一個 python 腳本輔助生成: import pandas…

ASP.NET Core 6.0 如何處理丟失的 Startup.cs 文件

介紹 .NET 6.0 已經發布&#xff0c;ASP.NET Core 6.0 也已發布。其中有不少變化讓很多人感到困惑。例如&#xff0c;“誰動了我的奶酪”&#xff0c;它在哪里Startup.cs&#xff1f;在這篇文章中&#xff0c;我將深入研究這個問題&#xff0c;看看它移動到了哪里以及其他變化。…

歐幾里得算法求最小公倍數和最大公約數

一.最大公約數 gcd(a,b)gcd(b,a%b) 遞歸式,當且僅當b0&#xff0c;易得0和a的公約數為a.(可作為遞歸的出口) 證明&#xff1a; int gcd(int a, int b) {if (b 0) return a;else return gcd(b, a % b); } 二.最小公倍數 給定整數a b&#xff0c;求a b的最小公倍數 有圖可知…

文檔解析:PDF里的復雜表格、少線表格如何還原?

PDF中的復雜表格或少線表格還原通常需要借助專業的工具或在線服務&#xff0c;以下是一些可行的方法&#xff1a; 方法一&#xff1a;使用在線PDF轉換工具 方法二&#xff1a;使用桌面PDF編輯軟件 方法三&#xff1a;通過OCR技術提取表格 方法四&#xff1a;手動重建表格 …

局域網中 Windows 與 Mac 互相遠程連接的最佳方案

由于工作需要&#xff0c;經常需要遠程連接或登錄到幾臺不同的工作用機上進行操作。 下面基于免費、高體驗等基本訴求&#xff0c;簡要記錄幾種不同場景下的實踐方案選擇&#xff0c;僅供參考。如您有更簡單且更優的方案&#xff0c;歡迎一起探討。 1 遠程桌面連接的幾種不同…

二叉樹的所有路徑(力扣257)

因為題目要求路徑是從上到下的&#xff0c;所以最好采用前序遍歷。這樣可以保證按從上到下的順序將節點的值存入一個路徑數組中。另外&#xff0c;此題還有一個難點就是如何求得所有路徑。為了解決這個問題&#xff0c;我們需要用到回溯。回溯和遞歸不分家&#xff0c;每遞歸一…

Centos 修改歷史讀錄( HISTSIZE)

history命令 -c #清空命令歷史 -r #讀歷史文件附加到歷史列表 -w #保存歷史列表到指定的歷史文件 命令歷史相關環境變量 HISTSIZE #命令歷史記錄的條數 HISTFILE #指定歷史文件&#xff0c;默認為~/.bash_history HISTFILESIZE #命令歷史文件記錄歷史的條數 以上變量可以 exp…

【C++高并發服務器WebServer】-2:exec函數簇、進程控制

本文目錄 一、exec函數簇介紹二、exec函數簇 一、exec函數簇介紹 exec 函數族的作用是根據指定的文件名找到可執行文件&#xff0c;并用它來取代調用進程的內容&#xff0c;換句話說&#xff0c;就是在調用進程內部執行一個可執行文件。 exec函數族的函數執行成功后不會返回&…

TDengine 與上海電氣工業互聯網平臺完成兼容性認證

在工業數字化轉型和智能化升級的浪潮中&#xff0c;企業對高效、可靠的數據管理解決方案的需求日益增長。特別是在風電智能運維、火電遠程運維、機床售后服務等復雜多樣的工業場景下&#xff0c;如何實現海量設備和時序數據的高效管理&#xff0c;已經成為推動行業升級的關鍵。…

Jenkins pipline怎么設置定時跑腳本

目錄 示例&#xff1a;在Jenkins Pipeline中設置定時觸發 使用pipeline指令設置定時觸發 使用Declarative Pipeline設置定時觸發 使用Scripted Pipeline設置定時觸發 解釋Cron表達式 保存和應用配置 小結 在Jenkins中&#xff0c;定時跑腳本&#xff08;例如定時執行Pip…

kotlin的協程的基礎概念

Kotlin的協程是一種用于簡化異步編程的強大工具。 理解協程的基礎概念可以幫助開發者有效地利用其能力。 以下是Kotlin協程的一些關鍵基礎概念&#xff1a; 協程&#xff08;Coroutines&#xff09; &#xff1a; 協程是一種用于處理并發任務的編程模型&#xff0c;它可以在單…

machine learning knn算法之使用KNN對鳶尾花數據集進行分類

通過導入必要的scikit-learn導入必要的庫&#xff0c;加載給定的數據&#xff0c;劃分測試集和訓練集之后訓練預測和評估即可 具體代碼如下&#xff1a; import numpy as np from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split f…

springEl 構建通用樹

再項目開發中&#xff0c;需要構建組織的樹形&#xff0c;菜單的樹形&#xff0c;字典樹形。感覺相似的代碼寫了一堆&#xff0c;就想著有沒有辦法&#xff0c;寫個通用的方法去處理下&#xff1f; 學習了《SpringEL詳解》&#xff0c;用springEl處理下。 構建樹形&…

C++ 入門速通-第1章【黑馬】

內容來源于&#xff1a;黑馬 集成開發環境&#xff1a;CLion CLion的官方下載網址&#xff1a;CLion: A Cross-Platform IDE for C and C by JetBrains 我在b站找到了一個安裝教程&#xff0c;可以按照這個視頻教程進行安裝&#xff08;內置漢化教程&#xff09;&#xff1a; …