2022-02-10 16:26:56 +08:00
|
|
|
import pymongo
|
|
|
|
|
|
|
|
MG_USER = "root"
|
|
|
|
MG_PWD = "sromitdTW569kC#M"
|
|
|
|
MG_HOST = "116.63.130.34"
|
|
|
|
MG_PORT = "27018"
|
|
|
|
CLIENT = pymongo.MongoClient('mongodb://{}:{}@{}:{}'.format(MG_USER, MG_PWD, MG_HOST, MG_PORT))
|
|
|
|
|
|
|
|
|
|
|
|
def INSERT_DATA(param1, param2):
|
|
|
|
"""
|
|
|
|
插入一条数据
|
|
|
|
Parameters:
|
|
|
|
param1: str 数据集
|
|
|
|
param2: obj 插入数据
|
|
|
|
Returns:
|
|
|
|
True 执行成功
|
|
|
|
"""
|
|
|
|
collection = CLIENT['宏观'][param1]
|
|
|
|
collection.insert_one(param2)
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
|
|
def UPDATE_DATA(param1, param2, param3):
|
|
|
|
"""
|
|
|
|
新建/更新一条数据
|
|
|
|
Parameters:
|
|
|
|
param1: str 数据集
|
|
|
|
param2: obj 搜索条件
|
|
|
|
param3: obj 插入数据
|
|
|
|
Returns:
|
|
|
|
True 执行成功
|
|
|
|
"""
|
|
|
|
collection = CLIENT['宏观'][param1]
|
|
|
|
collection.update_one(param2, {"$set": param3}, upsert=True)
|
2022-02-11 14:28:16 +08:00
|
|
|
|
|
|
|
|
|
|
|
def FIND_DATA(param1, param2):
|
|
|
|
"""
|
|
|
|
根据查询条件查询符合条件的所有数据
|
|
|
|
Parameters:
|
|
|
|
param1: str 数据集
|
|
|
|
param2: obj 查询条件
|
|
|
|
Returns:
|
|
|
|
records: list 符合条件的数据
|
|
|
|
"""
|
|
|
|
collection = CLIENT['宏观'][param1]
|
|
|
|
records = list(collection.find(param2, {'_id': False}))
|
|
|
|
return records
|
|
|
|
|
|
|
|
|
2022-02-11 16:14:03 +08:00
|
|
|
def FIELDS_FIND_DATA(param1, param2, param3):
|
|
|
|
"""
|
|
|
|
根据查询条件和需求字段返回数据
|
|
|
|
Parameters:
|
|
|
|
param1: str 数据集
|
|
|
|
param2: obj 查询条件
|
|
|
|
param3: list 需求字段
|
|
|
|
Returns:
|
|
|
|
records: list 符合条件的数据
|
|
|
|
"""
|
|
|
|
collection = CLIENT['宏观'][param1]
|
|
|
|
param3 = dict(zip(param3, len(param3) * [1]))
|
|
|
|
records = list(collection.find(param2, {**{'_id': False}, **param3}))
|
|
|
|
return records
|
|
|
|
|
|
|
|
|
2022-02-11 14:28:16 +08:00
|
|
|
def FUZZY_FIND_DATA(param1, param2):
|
|
|
|
"""
|
|
|
|
模糊查询
|
|
|
|
Parameters:
|
|
|
|
param1: str 数据集
|
|
|
|
param2: obj 查询条件
|
|
|
|
Returns:
|
|
|
|
records: list 符合条件的数据
|
|
|
|
"""
|
|
|
|
collection = CLIENT['宏观'][param1]
|
|
|
|
records = list(collection.find(param2, {'_id': False}))
|
|
|
|
return records
|