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

首頁 > 數(shù)據(jù)庫 > MongoDB > 正文

mongodb中隨機(jī)獲取1條記錄的實(shí)現(xiàn)方法

2020-10-29 18:48:45
字體:
供稿:網(wǎng)友

實(shí)現(xiàn)原理如下

    1.先查詢表中的記錄總數(shù)

    2.隨機(jī)獲取偏移量為0~總記錄數(shù)-1

    3.查詢時(shí)skip偏移量,再獲取1條記錄

因本人測試環(huán)境php已升級(jí)到7.0以上,mongodb擴(kuò)展使用支持php7.0以上的擴(kuò)展,很多方法與php5.6不同。因此代碼必須在php7.0以上運(yùn)行。如果是php5.6環(huán)境,需要修改代碼才能運(yùn)行。

代碼如下:

function.php

<?php// 連接mongodbfunction conn($host, $user, $passwd){ $server = 'mongodb://'.$user.':'.$passwd.'@'.$host; try{  $conn = new MongoDB/Driver/Manager(); } catch (MongoDB/Driver/Exception/ConnectionException $e){  throw new ErrorException('Unable to connect to db server. Error:' . $e->getMessage(), 31); } return $conn;}// 插入數(shù)據(jù)function add($conn, $dbname, $collname, $data, $index){ // 創(chuàng)建索引 $cmd = array(  'createIndexes' => $collname,  'indexes' => array(   array(    'name' => 'index',    'key' => $index,    'ns' => $dbname.'.'.$collname   )  ) ); $command = new MongoDB/Driver/Command($cmd); $conn->executeCommand($dbname, $command); // 插入數(shù)據(jù) $bulk = new MongoDB/Driver/BulkWrite(); $inserted = 0; if($data){  foreach($data as $k=>$v){   $bulk->insert($v);  }  $result = $conn->executeBulkWrite($dbname.'.'.$collname, $bulk);  $inserted = $result->getInsertedCount(); } return $inserted;}// 獲取總記錄數(shù)function getCount($conn, $dbname, $collname){ $cmd = array(  'count' => $collname,  'query' => array() ); $command = new MongoDB/Driver/Command($cmd); $result = $conn->executeCommand($dbname, $command); $response = current($result->toArray()); if($response->ok==1){  return $response->n; } return 0;}// 隨機(jī)獲取一條記錄function randOne($conn, $dbname, $collname){ // 總記錄數(shù) $total = getCount($conn, $dbname, $collname); // 隨機(jī)偏移 $skip = mt_rand(0, $total-1); $filter = array(); $options = array('skip'=>$skip, 'limit'=>1); $query = new MongoDB/Driver/Query($filter, $options); $cursor = $conn->executeQuery($dbname.'.'.$collname, $query); $result = array(); if($cursor){  foreach($cursor as $v){   $v = objectToArray($v);   unset($v['_id']);   $result[] = $v;  } } return $result? $result[0] : $result;}// 對(duì)象轉(zhuǎn)為數(shù)組function objectToArray($obj){ $arr = is_object($obj) ? get_object_vars($obj) : $obj; if(is_array($arr)){  return array_map(__FUNCTION__, $arr); }else{  return $arr; }}?>

demo.php

<?phprequire('function.php');// 連接mongodb$conn = conn('localhost','testdb','root','123456');// 插入50條數(shù)據(jù)記錄$data = array();// 索引$index = array('user'=>true);for($i=0; $i<50; $i++){ $data[] = array(  'user' => 'test_user_'.str_pad($i, 4, '0', STR_PAD_LEFT) );}$inserted = add($conn, 'testdb', 'user', $data, $index);echo '成功插入'.$inserted.'條測試記錄數(shù)<br><br>';// 隨機(jī)獲取一條記錄,抽5次echo '隨機(jī)獲取一條記錄,抽5次<br>';$result = array();for($i=0; $i<5; $i++){ $result[] = randOne($conn, 'testdb', 'user');}echo '<pre>';print_r($result);echo '</pre>';?>

輸出:

成功插入50條測試記錄數(shù)

隨機(jī)獲取一條記錄,抽5次

Array( [0] => Array  (   [user] => test_user_0017  ) [1] => Array  (   [user] => test_user_0026  ) [2] => Array  (   [user] => test_user_0004  ) [3] => Array  (   [user] => test_user_0043  ) [4] => Array  (   [user] => test_user_0023  ))

測試php代碼,首先需要在mongodb創(chuàng)建testdb及創(chuàng)建用戶和執(zhí)行auth。

方法如下:

use testdbdb.createUser(  {   "user":"root",   "pwd":"123456",   "roles":[{"role" : "readWrite", "db":"testdb"}]  } ) db.auth(  {   "user":"root",   "pwd":"123456"  } ) 

總結(jié)

以上就是這篇文章的全部內(nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能有所幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)武林網(wǎng)的支持。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
91精品国产自产在线丝袜啪| 成人精品视频久久久久| 亚洲综合免费观看高清在线观看| 99精品国产在热久久婷婷| 日韩视频一区二区三区| 男男视频在线观看网站| 色偷偷噜噜噜亚洲男人的天堂| 99久久免费看精品国产一区| 国产xxxx在线观看| 91精品综合久久久久久五月天| 国产麻豆综合视频在线观看| 欧美激情专区| 91蝌蚪国产九色| 欧美精品欧美精品| 国产亚洲精品女人久久久久久| 漂亮人妻被黑人久久精品| 暧暧视频免费| 日本一级黄色录像| 强伦女教师2:伦理在线观看| 亚洲人成精品久久久| 中国在线观看免费国语版电影| 中文字幕天天干| 欧美群妇大交群中文字幕| 亚洲一区日本| 亚洲综合区在线| 丝袜亚洲另类丝袜在线| 一起草在线视频| 欧美一区二区三区在线观看视频| 欧美伊人久久久久久久久影院| 91aaa在线观看| 你懂的国产在线| 欧美视频免费在线| 日p在线观看| 欧美日韩性视频在线| 蜜桃精品久久久久久久免费影院| 日韩成人精品在线观看| 成人精品一区二区三区电影| 国产精品1024| 久久久久久91亚洲精品中文字幕| 国产成人麻豆精品午夜在线| 又黄又爽又色的视频| 快播电影网址老女人久久| 欧美黄网在线观看| 美臀av在线| 伊人永久在线| 天天碰免费视频| 欧美午夜精品久久久久久久| 毛片免费在线观看| 日韩色av导航| 粗大的内捧猛烈进出在线视频| 欧美疯狂性受xxxxx喷水图片| 亚洲日韩欧美一区二区在线| 91蝌蚪在线观看视频| 成人精品动漫一区二区三区| 人妻体体内射精一区二区| 欧美变态tickling挠脚心| 日韩精品福利在线| 91精彩刺激对白露脸偷拍| av影片免费在线观看| 波多野结衣一区二区三区在线观看| 国产精品videossex久久发布| 免费看涩涩视频软件| 亚洲免费在线播放视频| 久久视频在线直播| 欧美日韩国产高清一区二区| 国产精品第七页| 亚洲成国产人片在线观看| 波多野结衣午夜| 精品人妻一区二区三区四区| 国产日韩欧美中文| 久久国产精品电影| 亚洲一区二区三区四区五区xx| 精品免费视频一区二区| 亚洲成人一区在线观看| 在线成人黄色| 在线成人av影院| 污视频网站在线免费观看| 色婷婷狠狠18| 波多一区二区| 成人爽a毛片| 国产寡妇亲子伦一区二区三区四区| a屁视频一区二区三区四区| 乱色588欧美| 极度色播免费播放视频| 亚洲性感美女99在线| 黄色一级片在线观看| 国产精品第二页| 国产免费中文字幕| 日韩麻豆第一页| 欧美日韩一区二区三区高清| 韩国19禁主播vip福利视频| 影视先锋午夜av| 亚洲欧美制服第一页| 久久久久久99| 欧美卡一卡二| 久久久午夜精品| 香蕉久久久久久久av网站| 日本丰满少妇黄大片在线观看| 日韩三级在线播放| 亚洲一区二区三区av无码| 国产爆乳无码一区二区麻豆| 国产日本久久| 男女羞羞在线观看| 午夜精品三级久久久有码| 欧美aaaaaaaa牛牛影院| 交换国产精品视频一区| 五月婷婷在线播放| 午夜精品久久久久久久99水蜜桃| 日韩精品视频观看| 久久久久免费观看| 久久久久久久久一| 欧美午夜性囗交xxxx| 免费精品国产自产拍观看| 天天插天天干天天操| 极品颜值美女露脸啪啪| 亚洲乱码国产一区三区| 国产欧美日韩三级| 蜜臀av免费观看| 一区二区在线观看视频在线| 国产乱子精品一区二区在线观看| 国内一区二区三区精品视频| 超碰在线免费看| 久久婷婷亚洲| 性欧美18一19性猛交| 国产一级做a爰片在线看免费| 一区二区电影在线观看| 日本免费不卡一区二区| 日韩av在线免费观看不卡| 成人在线观看a| 国产精品色眯眯| 久久精品视频观看| av美女在线| 亚洲免费在线视频观看| 18被视频免费观看视频| 国产在线视频一区二区| 青青草视频在线免费播放| 97人妻精品一区二区免费| 青青草原av在线| 影音先锋男人资源在线| 亚洲尤物精选| 小泽玛利亚一区二区免费| 国产高清免费av| 日日夜夜视频| 3d动漫精品啪啪1区2区免费| 精品国产一区三区| 老司机精品视频一区二区| 国产精品国产三级国产a| 日本欧美肥老太交大片| 最近中文字幕在线免费观看| eeuss影院www在线观看| 中文字幕免费国产精品| 国产一区二区三区美女| 久久久夜色精品亚洲| 日韩一区二区在线视频| 精品无码久久久久久国产| 国产a级片免费看| 在线亚洲精品福利网址导航| 日本免费黄色网| 欧美精品一区男女天堂| 亚洲国产成人精品无码区99| 国产精品美女久久久久aⅴ| 最新高清无码专区| 国产精品久久久久久五月尺| 欧美少妇激情| 国产清纯在线一区二区www| 2018日日夜夜| 亚洲成色在线综合网站2018站| 国产又色又爽又黄又免费| 亚洲乱码中文字幕综合| 日韩精品一二三区| 国产午夜在线观看| 最新黄色av网站| 国产有色视频色综合| 成人免费一区二区三区牛牛| 超碰在线免费看| 91麻豆蜜桃一区二区三区| 亚洲日本电影在线| 97国产成人高清在线观看| 免费不卡中文字幕在线| 人人干狠狠干| 韩国三级丰满少妇高潮| 99久久婷婷国产| 橘梨纱av一区二区三区在线观看| 欧美一级片在线免费观看| 日本黄网免费一区二区精品| 色综合久久久网| 精品入口蜜桃| 91久久视频| 欧美绝顶高潮抽搐喷水合集| 国产精品免费观看高清| 午夜a一级毛片亚洲欧洲| 欧美群妇大交群中文字幕| 美女写真久久影院| 日本一区精品久久久久影院| 永久免费看片在线观看| 国产一区二区三区四区五区加勒比| 久久99久久久| 欧美日韩国产天堂| av片在线观看| 日韩av一卡二卡| 亚洲午夜精品久久久久久浪潮| www国产91| 亚洲图区一区| 午夜精品一区二区三区视频| 日本一二区免费| 欧美日本一区二区视频在线观看| 日韩精品电影一区二区三区| 男生女生差差差的视频在线观看| 国产在线观看av| 国产成人av自拍| 欧美色倩网站大全免费| 91电影在线| 久久精品72免费观看| 国产在线精品观看| 久久99久久久久| 强开小嫩苞一区二区三区视频| 亚洲男帅同性gay1069| 欧美在线视频网| 中文字幕免费在线观看视频一区| 永久免费黄色软件| 成人免费激情视频| 色综合一个色综合| 在线观看国产精品91| 欧美日韩加勒比精品一区| av大片免费在线观看| 欧美一级日韩免费不卡| 日韩三级在线观看视频| 欧美综合在线视频| 日本免费一区二区六区| 亚洲视频在线观看免费| 色a资源在线| 天天舔天天干| 欧美日韩视频免费在线观看| 91色婷婷久久久久合中文| 国产一级片子| 91视频一区二区三区| 丁香影院在线| 久久久久久婷| 一个色综合网| 精品人妻午夜一区二区三区四区| 日韩av不卡一区| 一区二区成人在线观看| 国产在线视频三区| 奇米网人体黄视频| 91午夜视频在线观看| ww久久综合久中文字幕| 老司机很黄的视频免费| 麻豆电影在线| 久久久久麻豆v国产| 日日摸夜夜夜夜夜添| 国产九色porn网址| 成人综合网网址| 久久午夜无码鲁丝片午夜精品| 成人欧美一区二区三区在线| 国产成人精品影视| 成人精品在线视频观看| 国产精品被窝福利一区| 91免费视频大全| 青青草原免费观看| 四虎精品影院在线观看视频| av在线不卡免费| 日韩精品有码在线观看| 五月婷婷在线视频| 麻豆一区二区三区在线观看| 亚洲欧美日韩国产中文| 亚州一区二区三区| 91麻豆精品国产91久久久久推荐资源| 婷婷六月国产精品久久不卡| 久久视频在线免费观看| 亚洲第一视频网| 日韩精品1区| 日韩欧美一区二区视频在线播放| japan乱配videos老少配| 五月婷婷丁香综合网| 精品在线亚洲视频| 亚洲成年人电影在线观看| 天天色天天射天天综合网| 一本色道久久综合亚洲精品酒店| 国产精品毛片久久久久久久av| 理论片播放午夜国外| 亚洲在线一区| 国产精品不卡一区二区三区在线观看| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 正在播放欧美一区| 亚洲国产欧美国产第一区| k8久久久一区二区三区| 色一情一区二区三区四区| 一区精品久久| 国产日韩在线观看一区| 黄频视频在线观看| av中文字幕第一页| 日韩一级成人av| 99青草视频在线播放视| 91女人18毛片水多国产| 国产综合色视频| 在线视频亚洲色图| 高清av电影在线观看| 在线精品视频小说1| 91精品国产综合久久久久| 精品综合久久| 免费在线观看av片| h在线免费观看| 欧美一二三四在线| 一级特黄曰皮片视频| 亚洲精品久久久久久久蜜桃| av影院在线播放| 一区二区三区欧美成人| 国产精品一区免费视频| 一二三四在线观看视频| 欧美影院视频| 日韩电影免费观看在线观看| 亚洲美女高潮久久久| 国产一级片网址| 国内自拍偷拍视频| 欧美激情一区二区三区不卡| 一二三四视频在线社区中文字幕2| 色九视频91| 美脚丝袜一区二区三区在线观看| 国产亚洲欧美另类中文| 少妇特黄a一区二区三区| 中文字幕在线观看二区| 欧美另类69xxxxx| 亚洲国产成人自拍| 亚洲二区中文字幕| 久久成人小视频| 色天天综合网| 极品粉嫩小仙女高潮喷水久久| 91精品国自产在线观看|