mongodb操作

来源:https://www.cnblogs.com/zhengze/archive/2019/04/13/10702123.html
-Advertisement-
Play Games

查詢用戶:db.system.users.find() 添加用戶:db.addUser('admin', '1234') mongodb導入csv數據 mongoimport -h localhost --port 27017 -u tor_tester -p 123456 -d torstatus ...


  1. 查詢用戶:db.system.users.find()

  2. 添加用戶:db.addUser('admin', '1234')

  3. mongodb導入csv數據

    mongoimport -h localhost --port 27017 -u tor_tester -p 123456 -d torstatus -c countrytocode -f country,ISO2 --file cc6.csv --type csv --ignoreBlanks

     

    導出數據至csv

    mongoexport -h localhost --port 27017 -u tor_tester -p 123456 -d torstatus -c countrytocode -f country,ISO2 -o cc6.csv 

  4. 創建索引:db.user.ensureIndex({"name":1},{name:'indexname'})

  5. 查看索引:db.status.getIndexes()

  6. 查看具體信息:db.mytest.find().explain()

  7. 刪除索引: collection.dropIndex({xxx:1/-1})

     

    ======================================================================================

    8.聚合查詢

 

db.status.group({

    keyf : function(status){

    var date = new Date(status.created.replace(/-/g, "/")); //字元串類型的時間轉為ISODate時間格式

    var dateKey = ""+date.getFullYear()+"-"+(date.getMonth()+1)+"-"+date.getDate();

    return {'day':dateKey}; 

}, 

initial : {"count":0}, 

reduce : function Reduce(status, out) {

         if(status.ipaddress){

            out.count +=1;

         }

    },

});

 

db.status.group({

     keyf: function(status){

         return {'platform':status.platform};

     },

     initial:{count:0},

     reduce:function(status, out){

          out.count++;

     },

});

 

db.status.group({

     key:{country_code:{"$ne":""}},

     initial:{count:0},

     reduce:function(status, out){

          out.count++

     },

 

});

 

db.status.aggregate([

  {$match:{'platform':{$ne:""}}},

    {$group: {

        _id: "$platform", 

     count: {$sum: 1}}

    },

    {$sort: {"_id": 1}}

]);

 

db.status.aggregate([

  {$match:{'country_code':{$ne:""}}},

    {$group: {

        _id: "$country_code", 

     count: {$sum: 1}}

    },

    {$sort: {"_id": 1}}

]);

 

db.status.aggregate([

  {$match:{'exit_flag':{$ne:""}}},

    {$group: {

        _id: "$exit_flag", 

     count: {$sum: 1}}

    },

    {$sort: {"_id": 1}}

]);

 

var str ='2012-08-12 23:13:15';

str = str.replace(/-/g,"/");

var date = new Date(str);

======================================================================================

9.添加新欄位:

db.blocks.update({}, {$set: {'uncles':[]}}, {multi: 1})

======================================================================================

10. mongodb添加索引時,索引的名字跟mongoengine的models的ordering一致時,才有效。這樣做分頁時才能快速獲取每頁數據。

======================================================================================

11.

127.0.0.1:6379> flushall

(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

127.0.0.1:6379> config set stop-writes-on-bgsave-error no

OK

======================================================================================

12.

db.transactions.find({"blockNumber":{$type:2}}).forEach(function(x){x.blockNumber=parseInt(x.blockNumber);db.transactions.save(x)})

======================================================================================

13.

1 Double 浮點型
2 String UTF-8字元串都可表示為字元串類型的數據
3 Object 對象,嵌套另外的文檔
4 Array 值的集合或者列表可以表示成數組
5 Binary data 二進位
7 Object id 對象id是文檔的12位元組的唯一 ID 系統預設會自動生成
8 Boolean 布爾類型有兩個值TRUE和FALSE
9 Date 日期類型存儲的是從標準紀元開始的毫秒數。不存儲時區
10 Null 用於表示空值或者不存在的欄位
11 Regular expression 採用js 的正則表達式語法
13 JavaScript code 可以存放Javasript 代碼
14 Symbol 符號
15 JavaScript code with scope 
16 32-bit integer 32位整數類型
17 Timestamp 特殊語義的時間戳數據類型
18 64-bit integer 64位整數類型

     

 


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

-Advertisement-
Play Games
更多相關文章
  • 1.統計本目錄下除`./apps/myapp/migrations`的所有py文件 2.單個文件行數 ...
  • 要安裝centos系統,就必須得有centos系統軟體安裝程式,可以通過瀏覽器訪問centos官網http://www.centos.org,然後找到Downloads - > mirrors鏈接,點擊後進入下載,但是由於這是國外的網址,下載速度肯定受限。 因此可以使用國內的鏡像源 下載安裝激活vm ...
  • 使用RouterOS, 搭建虛擬路由器,並且配置多個網關互通。配置步驟如下。 基礎配置 1. RouterOS 伺服器,設置如下 2. VM 不同網段的設置 == 192.168.4.X 網段 設置gateway為RouterOS伺服器上的對應網段的IP = 192.168.4.1 然後,記得重啟n ...
  • 概述 NewSQL日漸火熱,無論還是開源的TiDB,CockroachDB還是互聯網大廠的Spanner,Oceanbase都號稱NewSQL,也就是分散式資料庫。NewSQL的典型特征就是,支持SQL,支持事務,高性能,低成本,高可靠,強一致,易擴展,運維友好等。從NewSQL的演進來看,所謂Ne ...
  • 一、事務的四大特性(ACID) 瞭解事務隔離級別之前不得不瞭解的事務的四大特性。 1、原子性(Atomicity) 事務開始後所有操作,要麼全部做完,要麼全部不做。事務是一個不可分割的整體。事務在執行過程中出錯,會回滾到事務開始之前的狀態,以此來保證事務的完整性。類似於原子在物理上的解釋:指化學反應 ...
  • 1、前置條件 MySQL資料庫中存在表user_info,其結構和數據如下: 2、自定義函數 函數:可以完成特定功能的一段SQL集合。MySQL支持自定義函數來完成特定的業務功能。 創建自定義函數(User Defined Function 簡稱UDF)的語法如下: 調用UDF的語法如下: 創建無參 ...
  • 資料庫事務併發帶來臟讀、不可重覆讀和幻讀等問題,為瞭解決這三個問題,出現了事務隔離級別,如:未提交讀取(read uncommitted)、已提交讀取(read committed)、可重覆讀取(repeatable read)、串列化(rerializable)。後續文章詳細介紹事務併發帶來的各個 ...
  • 使用索引的註意事項 使用索引時,有以下一些技巧和註意事項: 1.索引不會包含有NULL值的列 只要列中包含有NULL值都將不會被包含在索引中,複合索引中只要有一列含有NULL值,那麼這一列對於此複合索引就是無效的。所以我們在資料庫設計時不要讓欄位的預設值為NULL。 2.使用短索引 對串列進行索引, ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...