MongoDB隨機查詢返回一條或N條記錄的方法
用$sample (aggregation)方法,具體命令為:
db.collection.aggregate( [ { $sample: { size: N } } ] ) N為條數
例如返回5條:
> db.test.aggregate( [ { $sample: { size: 5 } } ] )
{ "_id" : ObjectId("5d1c5a7b39ab0f9fbcd647a8"), "id" : 1, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c733bee9b8d3cbbc26779"), "id" : 89007, "name" : "hello" }
{ "_id" : ObjectId("5d1c7342ee9b8d3cbbc276dc"), "id" : 92946, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c7240df7032c6c7966207"), "id" : 88223, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5b7c39ab0f9fbcd94c62"), "id" : 97819, "name" : "chenfeng" }
返回1條:
> db.test.aggregate( [ { $sample: { size: 1 } } ] )
{ "_id" : ObjectId("5d1c5aec39ab0f9fbcd7b29a"), "id" : 92915, "name" : "chenfeng" }
返回15條:
> db.test.aggregate( [ { $sample: { size: 15 } } ] )
{ "_id" : ObjectId("5d1c5b4039ab0f9fbcd88eca"), "id" : 49283, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5b6539ab0f9fbcd904f3"), "id" : 79532, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5b8a39ab0f9fbcd979b3"), "id" : 109420, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5c8239ab0f9fbcdc5229"), "id" : 295906, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c6d9adf7032c6c7939435"), "id" : 4461, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c6bf3eb9134288dc9f3ef"), "id" : 79051, "name" : "dsf" }
{ "_id" : ObjectId("5d1c6bc0eb9134288dc98769"), "id" : 51269, "name" : "dsf" }
{ "_id" : ObjectId("5d1c72c4ee9b8d3cbbc1698d"), "id" : 24003, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c6de8df7032c6c794a42a"), "id" : 74082, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c6dfddf7032c6c794eecf"), "id" : 93191, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5d1839ab0f9fbcde28a5"), "id" : 416350, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5cbe39ab0f9fbcdd0dad"), "id" : 343910, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5c0639ab0f9fbcdaed91"), "id" : 204618, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5bd639ab0f9fbcda637d"), "id" : 169270, "name" : "chenfeng" }
{ "_id" : ObjectId("5d1c5c9639ab0f9fbcdc8fb7"), "id" : 311664, "name" : "chenfeng" }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2649455/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mybatis一對多查詢resultMap只返回了一條記錄MyBatis
- [Q]隨機抽取前N條記錄的問題zt隨機
- 使用Oracle分析函式隨機抽取N條記錄Oracle函式隨機
- MongoDB查詢條件MongoDB
- MongoDB條件查詢MongoDB
- 使用JdbcTemp查詢少了一條記錄JDBC
- 【面經】面試官:如何以最高的效率從MySQL中隨機查詢一條記錄?面試MySql隨機
- 對查詢資料庫中第M到N條記錄的思考資料庫
- mysql 隨機查詢記錄MySql隨機
- postgresql 多條記錄合併一條,或取最新的一條資料SQL
- mongodb條件查詢不等於MongoDB
- mongodb索引--1億條記錄的查詢從55.7秒到毫秒級別MongoDB索引
- 使用Django從資料庫中隨機取N條記錄的不同方法及其效能實測Django資料庫隨機
- 反連線,最快返回第一條記錄
- PHP查詢資料庫中滿足條件的記錄條數(二種實現方法)PHP資料庫
- 報表查詢條件的 N 種使用方式
- SQL:查詢每個類別最新的5條記錄SQL
- 深入理解mongodb查詢條件語句MongoDB
- MySQL 分組排序後 → 如何取前N條或倒數N條MySql排序
- 條件隨機場CRF(一)從隨機場到線性鏈條件隨機場條件隨機場CRF
- MongoDB之資料查詢(where條件過濾)MongoDB
- 查詢某條記錄存在哪個資料塊中
- 演算法,PHP取資料庫中百萬條資料中隨機20條記錄演算法PHP資料庫隨機
- 寫一個“特殊”的查詢構造器 – (四、條件查詢:複雜條件)
- SQL 如何返回最大值所在的多條記錄SQL
- 一條查詢sql的執行之路SQL
- 不同資料庫限制取前N條記錄資料庫
- MongoDB操作之遍歷集和條件查詢操作MongoDB
- 挺有意思:PHP 將N秒內連續的記錄視為一條記錄PHP
- 一條select的查詢的過程
- 使用awk查詢不滿足sqlloader載入條件的記錄SQL
- MySQL分組查詢後獲取前N條資料MySql
- mysql條件查詢MySql
- 查詢條件和條數,先查詢兩條免費的,後面為vip
- SQL 單表多條記錄分組查詢分頁程式碼SQL
- 一條查詢語句的執行流程
- mysql刪除一條記錄MySql
- Oracle隨機抽取記錄的方法Oracle隨機