MongoDB資料庫 : 基礎

来源:https://www.cnblogs.com/cccy0/archive/2018/06/09/9158932.html
-Advertisement-
Play Games

三元素:資料庫 集合 文檔(json的擴展bson) 服務啟動重啟停止: sudo service mongodb start(stop,restart) 修改配置文件 /etc/mongodb.conf添加 smallfiles=true 查看當前資料庫 db 查看所有資料庫 show dbs 查 ...


三元素:資料庫 集合 文檔(json的擴展bson)

服務啟動重啟停止: sudo service mongodb start(stop,restart)

修改配置文件 /etc/mongodb.conf
添加 smallfiles=true

查看當前資料庫 db

查看所有資料庫 show dbs

查看資料庫信息 db.stats()

切換資料庫 use 資料庫名(沒有則只是指向這個資料庫,但不創建,插入數據創建集合時才會創建)

刪除當前指向資料庫 db.dropDatabase()

創建集合 db.createCollection('名字',{opt})

創建固定集合(size大小單位kb,max文檔最大條數):db.createCollection('集合名',{capped:true,size:5,max:5})

查看集合 show collections

刪除集合 db.集合名.drop()

插入數據(會自動創建集合): db.集合名.insert({文檔1,文檔2,...})

簡單查詢: db.集合名.find()

修改一條文檔(不加multi修改一條,multi:true修改多條) db.update({條件},{修改的內容},{multi:true})

修改一條文檔中的某些鍵值($set) db.update({},{$set:{鍵:'值'}})

保存: db.集合名.save()

刪除(justOne:true刪除一條,預設多條): db.集合名.remove({條件},{justOne:預設false})

查詢返回第一條: db.集合名.findOne({條件})
結果格式化: db.集合名.find({}).pretty()

比較運算符:
等於:預設就是等於 如(查詢title為3的文檔) db.sub.find({title:3})

小於($lt) 查詢(title小於5的) db.sub.find({title:{$lt:5}})

大於($gt) 查詢(title大於5的) db.sub.find({title:{$gt:5}})

還有大於等於:$gte,小於等於:$lte,不等於:$ne

邏輯運算符與(逗號) 如查詢名字是xx,性別為true的:db.stu.find({name:'xx',gender:true})

或($or[]) 查詢名字是xx或者xxx的:db.stu.find({$or:[{name:'xx'},{name:'xxx'}]})

範圍運算符($in:[],$nin:[]):如查詢年齡在18-29的:db.stu.find({age:{$in:[18,29]}})

正則表達式(用// 或者$regex):查詢姓王的:db.find({name:/^王/})

自定義函數($where+函數) 如查詢年齡大於20的:db.stu.find({$where:function(){return this.age<20}})

limit(獲取多少條文檔)如獲取10條: db.集合.find().limit(10)

skip(跳過幾條) 如跳過2條: db.jihe.find().skip(2)

投影(顯示指定的欄位顯示設置1,不顯示設置0_id列預設顯示):如顯示name和age db.find({條件},{name:1,age:1})

排序(sort,值為1升序,值為-1降序):db.集合.find().sort({欄位:1,....})

統計(count()) db.集合.count({條件})

去重(distinct()): db.集合.distinct('去重欄位',{條件})


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 單表查詢 1、查詢所有: select * from 表名; 2、查詢選中欄位數據: select 欄位名 from 表名; 3、查詢指定條件下的數據: select 欄位名 from 表名 where 條件(例id>3); 4、查詢後為欄位取別名 as: select 原名 as 更改名 from ...
  • 背景 由於項目的需要,使用 資料庫,因此在Windows上安裝 資料庫。但是在安裝後,無法訪問本地資料庫,這個時候查看 目錄,沒有任何文件。而且安裝過程中,彈出提示框 Problem running post install step.Installation may not complete co ...
  • 在鎖與事務系列里已經寫完了上篇中篇,這次寫完下篇。這個系列俺自認為是有條不紊的進行,但感覺鎖與事務還是有多很細節沒有講到,溫故而知新可以為師矣,也算是一次自我提高總結吧,也謝謝大伙的支持。在上一篇的末尾寫了事務隔離級別的不同表現,還沒寫完,只寫到了重覆讀的不同隔離表現,這篇繼續寫完序列化,快照的不同 ...
  • 一、表關係 先參照如下表結構創建7張表格,並創建相關約束 年級表: class_grade 1. 班級表class create table class ( cid int primary key auto_increment, caption char(10), grade_id int ); i ...
  • 第一步:使用記事本打開mysql安裝目錄下的"my.ini”文件。 看看default-character-set 是不是 utf8不是的話 改為utf8即可!(以前的版本可能沒有這句話 直接加上就好了!) 第二步:在mysql資料庫cmd中輸入:show variables like'%char% ...
  • zookeeper的安裝分為三種模式:單機模式、集群模式和偽集群模式。 1、單機模式 首先,從Apache官網下載一個Zookeeper穩定版本,本次教程採用的是zookeeper-3.4.9版本。 http://apache.fayea.com/zookeeper/zookeeper-3.4.9/ ...
  • 前言 1.操作系統為Centos7 2.所有操作都是使用root用戶去操作。也可以使用其他用戶,非root的話要註意操作的許可權問題。 3.安裝的Hadoop版本是2.6.5,Spark版本是2.2.0,Scala的版本是2.11.8。 如果安裝的Spark要同Hadoop搭配工作,則需註意他們之間的 ...
  • 聚合(aggregate): db.集合.aggregate([{管道:{表達式}}]) db.集合.aggregate([ {管道1:{表達式1}}, {管道2:{表達式2}}, ... ...]) 管道1的結果作為管道2的輸入. $group:分組 {$group:{ _id:'$gender' ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...