亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MongoDB > 正文

mongo中模糊查詢的綜合應用

2020-10-29 18:42:02
字體:
來源:轉載
供稿:網友

前言

以下是一個mongo查詢的綜合應用,即介紹一個生產中實際應用的模糊查詢,當然其實也很簡單,主要用到mongo中的模糊查詢和$or查詢,以及并的關系,下面是一個mongo中的一條記錄

{  "_id" : "ffe6a068-9043-4334-97d2-75387340e655",  "file_id" : "ffe6a068-9043-4334-97d2-75387340e655",  "name" : "中國正大",  "update_time" : NumberInt(1554975642),  "create_time" : NumberInt(1554975642),  "content" : "中國正大相關信息",  "file_url" : "",  "file_type" : "",  "user_ids" : [ 1.0,  10.0 ],  "group_ids" : [ ],  "is_common" : NumberInt(0),  "confidence" : -1.0,  "obj_id" : "",  "source" : "",  "content_time" : "",  "author" : "",  "summary" : "",  "info_type" : "00",  "sub_info_type" : "",  "title" : "",  "word_num" : NumberInt(8)}

對上面一條記錄或者更多條記錄我們生產中的需求是:查詢出集合中(mongo中的集合即是mysql中的表),name或content中包含"正大"二字的記錄(關鍵詞即是用戶隨機輸入的,其實是一個變量),并且時間戳的值大于某一個開始時間和某一個結束時間(這個也是用戶在前端進行選擇,然后我們拿到前端的請求來進行查詢的),并且文件的類型即info_type字段的值為"00",“00”代表的是word也是前端用戶選擇后我們獲取的條件之一,當然還有其他條件想進行嘗試可以自由發揮

下面就是使用mongo語句進行實現的上面的需求:

db.getCollection("subscribe_test").find({$or:[{"name":{"$regex":"正大"}},{"content":{"$regex":"正大"}}],"update_time":{$gte:1,$lte:2000000000},info_type:"00"})

對于查詢我們有的時候會選擇在程序中進行,有的小伙伴會問上面的mongo語句怎么在編程語言中進行實現,下面是用python語言中進行實現的,我們會引用python中操作mongo的一個模塊即pymongo模塊可以使用pip install pymongo在控制臺或cmd中進行一鍵安裝,至于如何使用也很簡單,可以自行百度或者訪問我的另一篇博客:pymono的簡單使用,下面附上用python代碼實現上面需求的業務代碼:

import pymongoimport re# 創建數據庫連接client = pymongo.MongoClient(host='127.0.0.1', port=8014) #填寫自己本機數據庫的ip和port或者遠程服務器數據庫的ip和port# 指定數據庫db1,沒有則創建數據庫db1db = client.dataretrieve#指定數據庫中指定的表collection=db.subscribe_test"""1、對表中的數據進行查詢""""""db.collection.find(query, projection)query :可選,使用查詢操作符指定查詢條件projection :可選,使用投影操作符指定返回的鍵。查詢時返回文檔中所有鍵值, 只需省略該參數即可(默認省略)。"""query = {}query["$or"] = [ {"name": re.compile("正大")}, {"content": re.compile("正大")},]query["file_type"] = "00"query["update_time"] = {"$gte": 0,"$lte": 2000000000}row=collection.find(filter=query)for r in row: print(r["content"])

下面是生產中實際的開發代碼,只供參考,只是把上面的一些常量,換成了從前端請求的數據:

def person_handler(req_params, page_size, search_offset): """ 去mongo中查詢個人數據 :param req_params: :param page_size: :param search_offset: :return: """ results = [] query = {} update_time = {} if 'start_time' in req_params and req_params["start_time"]: start_time = int(req_params["start_time"]) update_time['$gte'] = start_time if 'end_time' in req_params and req_params['end_time']: end_time = int(req_params["end_time"]) update_time['$lte'] = end_time if update_time: query["update_time"] = update_time if 'file_type' in req_params and req_params['file_type']: query["file_type"] = req_params["file_type"] if 'user_ids' in req_params and req_params['user_ids']: query['user_ids'] = int(req_params['user_id']) serch_keywords = req_params["search_keywords"] query["$or"] = [ {"name": re.compile(serch_keywords)}, {"content": re.compile(serch_keywords)}, ] print(query) result = person_mongodao.search(filter=query).skip(search_offset).limit(page_size) count = person_mongodao.search(filter=query).skip(search_offset).limit(page_size).count() for row in result: results.append(row) additions = {"word_segs": req_params["search_keywords"], "remind": 0} print("查詢結果", results) return results, additions, count

如果有小伙伴說我用的不是python語言譬如java用代碼怎么實現呢?那么如果你會寫mysql來實現上面的需求的話本博主可以推薦你使用mongo的一款可視化工具Studio 3T來將mysql語句轉換成mongo語句,python語句,java語句等

mysql語句也類似mongo語句有一個控制臺可以來進行書寫mysql語句,然后進行查詢之后將結果進行轉換

總結

以上就是關于mongo模糊查詢的簡單使用,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對武林網的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲精品一区二555| 3344国产精品免费看| 91精品视频免费| 久久久亚洲影院你懂的| 亚洲精品美女在线| 日韩中文字在线| 日韩中文字幕在线观看| 久久免费视频观看| 日日骚久久av| 成人妇女淫片aaaa视频| 97在线观看视频| 狠狠操狠狠色综合网| 亚洲国产一区二区三区四区| 高跟丝袜一区二区三区| 91网站免费看| 57pao成人永久免费视频| 精品亚洲永久免费精品| 亚洲欧美精品一区二区| 亚洲tv在线观看| 久久精品一区中文字幕| 91精品国产高清久久久久久91| 亚洲精品456在线播放狼人| 日韩av片电影专区| 欧美国产日韩免费| 日韩成人小视频| 欧美日韩国产中文精品字幕自在自线| 欧美精品精品精品精品免费| 亚洲男人第一网站| 久久精品视频亚洲| 欧美视频专区一二在线观看| 姬川优奈aav一区二区| 日韩成人在线视频网站| 亚洲人精品午夜在线观看| 国产剧情日韩欧美| 91九色国产视频| 日韩av在线资源| 成人激情视频在线播放| 中文字幕视频一区二区在线有码| 国内精品久久久久伊人av| 26uuu亚洲伊人春色| 亚洲精品国产精品自产a区红杏吧| 国产精品香蕉av| 欧美一级高清免费| 美日韩精品免费观看视频| 欧美激情在线播放| 欧美成人激情视频免费观看| 日韩精品在线观看一区| 国产精品爽爽ⅴa在线观看| 中文字幕欧美国内| 奇门遁甲1982国语版免费观看高清| 夜夜狂射影院欧美极品| 日韩欧美高清在线视频| 国产欧美日韩丝袜精品一区| 国产精品啪视频| 成人网在线观看| 日韩欧美中文字幕在线播放| 91干在线观看| 亚洲色图在线观看| 成人福利视频网| 欧美视频在线观看免费| 国产精品免费在线免费| 午夜精品久久久久久久白皮肤| 欧美性视频网站| 国产精品夜色7777狼人| 在线色欧美三级视频| 亚洲免费人成在线视频观看| 懂色av中文一区二区三区天美| 国产成人av在线播放| 中文字幕日韩欧美| 亚洲高清免费观看高清完整版| 亚洲欧洲日本专区| 亚洲电影免费观看高清完整版在线| 欧美巨猛xxxx猛交黑人97人| 国产综合视频在线观看| 国模精品视频一区二区三区| 欧美猛男性生活免费| 日韩亚洲欧美中文在线| 久久在精品线影院精品国产| 国产丝袜一区二区三区免费视频| 欧美日韩亚洲网| 国产精品亚洲一区二区三区| 日本久久亚洲电影| 国产精品扒开腿做爽爽爽视频| 国产盗摄xxxx视频xxx69| 欧美一区三区三区高中清蜜桃| 95av在线视频| 欧美日韩在线视频首页| 91精品啪aⅴ在线观看国产| 国产成人精品久久二区二区| 黑人精品xxx一区一二区| 人妖精品videosex性欧美| 草民午夜欧美限制a级福利片| 久久99久久久久久久噜噜| 亚洲精品有码在线| 亚洲精品电影网站| 欧美日本在线视频中文字字幕| 国产成人在线播放| 2020国产精品视频| 亚洲欧美另类在线观看| 成人a在线视频| 91在线|亚洲| 国产精品一区二区三区久久| 国产精品www| 欧美大片免费观看| 日韩亚洲精品视频| 色av中文字幕一区| 97视频在线观看视频免费视频| 欧美电影免费观看高清完整| 亚洲精品视频网上网址在线观看| 精品久久久久久中文字幕一区奶水| 亚洲免费影视第一页| 欧美激情在线观看| 黑人极品videos精品欧美裸| 欧美日韩国产中文字幕| 2018国产精品视频| 国产精品香蕉国产| 精品久久久国产| 午夜精品三级视频福利| 欧美性猛交xxxx| 欧美激情亚洲另类| 97热在线精品视频在线观看| 亚洲精品国产免费| 久久久久久久久久久网站| 91欧美精品午夜性色福利在线| 亚洲成人久久电影| 欧美大肥婆大肥bbbbb| 欧美激情视频一区二区三区不卡| 成人国产精品一区二区| 国产精品扒开腿爽爽爽视频| 亚洲性夜色噜噜噜7777| 久久九九免费视频| 久久成人精品视频| 秋霞午夜一区二区| 久久久黄色av| 久久久久日韩精品久久久男男| 亚洲精品二三区| 热门国产精品亚洲第一区在线| 欧美激情中文字幕乱码免费| www.99久久热国产日韩欧美.com| 欧美激情一级欧美精品| 国产一区二区三区直播精品电影| 久久久久成人网| 欧美特级www| 日韩精品免费在线播放| 日韩欧美亚洲综合| 国产精品国模在线| 久久亚洲国产精品成人av秋霞| 国产精品久久久久久久久久三级| 亚洲成人亚洲激情| 亚洲va国产va天堂va久久| 成人xvideos免费视频| 久久在线视频在线| 久久综合免费视频| 91免费高清视频| 日韩欧美中文免费| 深夜福利日韩在线看| 91精品久久久久久久久中文字幕| 久久久国产一区二区| 亚洲美女福利视频网站| 亚洲福利视频网| 欧美精品精品精品精品免费| 国产亚洲精品久久久久久牛牛| 国产精品福利观看| 久久亚洲精品小早川怜子66|