//网站根目录 var __ID_HOME__="#zj_home"; //生产环境设置为true,本地设置为false var __JS_DEBUG__= true; var __JS_APP__ = ""; var __JS_APP_HOME__ = "/"; var __JS_PUBLIC__ = "/Public"; var __JS_HOME__ = "/Template/default/Home/Public"; var _URL_SIGN = "http://zhangjunbk.com:80/sign"; var _URL_LOGIN = "http://zhangjunbk.com:80/login"; var _URL_REG = "http://zhangjunbk.com:80/reg"; var _URL_FORGET = "http://zhangjunbk.com:80/forget"; var _URL_SEND_EMAIL = "http://zhangjunbk.com:80/sendEmail"; var _URL_SEND_MOBILE = "http://zhangjunbk.com:80/sendMobile"; var _URL_RELATION_EMAIL = "http://zhangjunbk.com:80/relationEmail"; var _URL_SIGN_RELATION_EMAIL = "http://zhangjunbk.com:80/sign_relation"; var _URL_FRONT_LOGOUT="/frontlogout"; var _URL_CHECK_LOGIN = "http://zhangjunbk.com:80/check_login"; var _URL_PAY_POINTS = "http://zhangjunbk.com:80/payPoints"; var _URL_PAY_POINTS_VIDEO = "http://zhangjunbk.com:80/payPointsVideo"; var _URL_USER_POINTS = "http://zhangjunbk.com:80/uindex"; var _URL_AJAX_STOCK_SEALING = "http://zhangjunbk.com:80/ajaxStockSealing"; var _URL_API_WX_CREATE = "http://zhangjunbk.com:80/wxV2Create"; var _URL_API_WX_CREATE_NATIVE_REWARD = "http://zhangjunbk.com:80/wxV2CreateNative_reward"; var _URL_CENTER_USER = "http://zhangjunbk.com:80/centerUser"; var _URL_QQ = "{https://www.zhangjunbk.com/oauth/callback/}";

python连接、操作mongodb数据库的方法实例详解

系统 1535 0

本文实例讲述了python连接、操作mongodb数据库的方法。分享给大家供大家参考,具体如下:

数据库连接

            
from pymongo import MongoClient
import pandas as pd
#建立MongoDB数据库连接
client = MongoClient('162.23.167.36',27101)#或MongoClient("mongodb://162.23.167.36:27101/")
#连接所需数据库,testDatabase为数据库名:
db=client.testDatabase
#连接所用集合,也就是我们通常所说的表,testTable为表名
collection=db.testTable


          

查询前几条

            
dataSet=collection.find().limit(3)
for item in dataSet:
  print(item)


          

无条件查询全部

            
dataSet=collection.find()
for item in dataSet:
  print(item)


          

按AND条件查询全部

            
#查询cpu使用率大于等于10且内存使用率大于等于10的所有字段数据
dataSet=collection.find({"cpu":{"$gte":10},"mem":{"$gte":10}})
for item in dataSet:
  print(item)


          

按AND条件查询指定字段数据

            
#查询cpu使用率大于等于10且内存使用率大于等于10的数据,字段只显示did、ts、cpu、mem
dataSet=collection.find({"cpu":{"$gte":10},"mem":{"$gte":10}}, {"did":1,"ts":1,"cpu":1,"mem":1})
for item in dataSet:
  print(item)
#查询cpu使用率等于0且内存使用率等于0的数据,字段只显示did、ts、cpu、mem
dataSet=collection.find({"cpu":0,"mem":0}, {"did":1,"ts":1,"cpu":1,"mem":1})
for item in dataSet:
  print(item)


          

按OR条件查询指定字段数据

            
#查询cpu使用率大于等于10或者内存使用率大于等于10的数据,字段只显示did、ts、cpu、mem
dataSet=collection.find({"$or":[{"cpu":{"$gte":10}},{"mem":{"$gte":10}}]}, {"did":1,"ts":1,"cpu":1,"mem":1})
for item in dataSet:
  print(item)
#查询cpu使用率等于10或者内存使用率等于10的数据,字段只显示did、ts、cpu、mem
dataSet=collection.find({"$or":[{"cpu":10},{"mem":10}]}, {"did":1,"ts":1,"cpu":1,"mem":1})
for item in dataSet:
  print(item)


          

mongodb的条件操作符

            
#  > - $gt
#  < - $lt
#  >= - $gte
#  <= - $lte


          

排序

            
#单列升序排序查询,,1 为升序,-1为降序
dataSet=collection.find().sort([("cpu",1)])
for item in dataSet:
  print(item)
#多列排序查询
dataSet=collection.find().sort([('did',pymongo.ASCENDING),('cpu',pymongo.DESCENDING)])
for item in dataSet:
  print(item)


          

查询结果写入excel

            
#查询cpu使用率大于等于10且内存使用率大于等于10的数据,字段只显示did、ts、cpu、mem,查询结果写入excel
import pandas as pd
dataSet=collection.find({"cpu":{"$gte":10},"mem":{"$gte":10}}, {"did":1,"ts":1,"cpu":1,"mem":1})
did,ts,cpu,mem=[],[],[],[]
for item in dataSet:
  did.append(item["did"])
  ts.append(item["ts"])
  cpu.append(item["cpu"])
  mem.append(item["mem"])
df=pd.DataFrame({"did":did,"ts":ts,"cpu":cpu,"mem":mem})
df.to_excel("C:/Users/Desktop/设备cpu内存数据.xlsx")


          

跳行查询

            
#下面表示跳过两条数据后读取数据
dataSet=collection.find().skip(2)
for item in dataSet:
  print(item)


          

去重

            
#查询cpu使用率大于20、did不重复的数据
dataSet=collection.distinct("did",{"cpu":{$gt:20}})
for item in dataSet:
  print(item)
#等同mysql的select distinct(did) from user where cpu>20


          

参考:

操作mongodb更详细说明https://www.jb51.net/article/169726.htm

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论