<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # MongoDB 查找文檔示例 > 原文: [https://howtodoinjava.com/mongodb/mongodb-find-documents/](https://howtodoinjava.com/mongodb/mongodb-find-documents/) 學習**在 [MongoDB](//howtodoinjava.com/nosql/introduction-to-mongodb-why-mongodb/ "MongoDB Basics")** 中找到文檔。 此 **mongodb 查找文檔教程**涵蓋了多種方法,它們與我們在 SQL 中使用`WHERE`子句的條件相同,可以**查詢單個文檔**或**查找多個文檔**。 ```java Table of Contents 1) Select all documents from a collection 2) Select first document from a collection 3) Select single document and limited field(s) from a collection 4) Select all documents with unique id from a collection 5) Document ids IN clause example 6) Document ids less than or greater than clause example 7) Document ids NOT IN clause example 8) Documents matching multiple fields example 9) Documents matching field value to some REGEX example ``` ## MongoDB 查找文檔 – 測試數據準備 為了構建和運行本教程中使用的示例,我在數據庫中填充了 20 個員工文檔,其中`employeeId`從 1 到 20,以及`employeeName`從`TestEmployee_1`到`TestEmployee_10`。 ```java private static void setUpTestData(DBCollection collection){ for (int i=1; i <= 10; i++) { collection.insert(new BasicDBObject().append("employeeId", i).append("employeeName", "TestEmployee_"+i)); } } ``` 現在運行我們的示例,并獲取不同場景下的數據。 ## 1\. MongoDB `find()` – 從集合中選擇所有文檔 ```java private static void selectAllRecordsFromACollection(DBCollection collection) { DBCursor cursor = collection.find(); while(cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出。 ```java { "_id" : { "$oid" : "538782753641d31b0cad0142"} , "employeeId" : 1 , "employeeName" : "TestEmployee_1"} { "_id" : { "$oid" : "538782753641d31b0cad0143"} , "employeeId" : 2 , "employeeName" : "TestEmployee_2"} { "_id" : { "$oid" : "538782753641d31b0cad0144"} , "employeeId" : 3 , "employeeName" : "TestEmployee_3"} { "_id" : { "$oid" : "538782753641d31b0cad0145"} , "employeeId" : 4 , "employeeName" : "TestEmployee_4"} { "_id" : { "$oid" : "538782753641d31b0cad0146"} , "employeeId" : 5 , "employeeName" : "TestEmployee_5"} { "_id" : { "$oid" : "538782753641d31b0cad0147"} , "employeeId" : 6 , "employeeName" : "TestEmployee_6"} { "_id" : { "$oid" : "538782753641d31b0cad0148"} , "employeeId" : 7 , "employeeName" : "TestEmployee_7"} { "_id" : { "$oid" : "538782753641d31b0cad0149"} , "employeeId" : 8 , "employeeName" : "TestEmployee_8"} { "_id" : { "$oid" : "538782753641d31b0cad014a"} , "employeeId" : 9 , "employeeName" : "TestEmployee_9"} { "_id" : { "$oid" : "538782753641d31b0cad014b"} , "employeeId" : 10 , "employeeName" : "TestEmployee_10"} ``` ## 2\. MongoDB `findOne()` – 從集合中選擇第一個文檔 ```java private static void selectFirstRecordInCollection(DBCollection collection) { DBObject dbObject = collection.findOne(); System.out.println(dbObject); } ``` 程序輸出: ```java { "_id" : { "$oid" : "538782a53641ed9125df86c0"} , "employeeId" : 1 , "employeeName" : "TestEmployee_1"} ``` ## 3\. MongoDB `where`子句 – 從集合中選擇單個文檔和有限的字段 ```java private static void selectSingleRecordAndFieldByRecordNumber(DBCollection collection) { BasicDBObject whereQuery = new BasicDBObject(); whereQuery.put("employeeId", 5); BasicDBObject fields = new BasicDBObject(); fields.put("employeeId", 1); DBCursor cursor = collection.find(whereQuery, fields); while (cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "_id" : { "$oid" : "53878332364101041fb2c141"} , "employeeId" : 5} ``` ## 4\. MongoDB 通過 ID 查找文檔 ```java private static void selectAllRecordByRecordNumber(DBCollection collection) { BasicDBObject whereQuery = new BasicDBObject(); whereQuery.put("employeeId", 5); DBCursor cursor = collection.find(whereQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "_id" : { "$oid" : "538783623641e9b2da299fa7"} , "employeeId" : 5 , "employeeName" : "TestEmployee_5"} ``` ## 5\. MongoDB `IN`子句示例 ```java private static void in_Example(DBCollection collection) { BasicDBObject inQuery = new BasicDBObject(); List<Integer> list = new ArrayList<Integer>(); list.add(2); list.add(4); list.add(5); inQuery.put("employeeId", new BasicDBObject("$in", list)); DBCursor cursor = collection.find(inQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "_id" : { "$oid" : "5387838d3641024de174c795"} , "employeeId" : 2 , "employeeName" : "TestEmployee_2"} { "_id" : { "$oid" : "5387838d3641024de174c797"} , "employeeId" : 4 , "employeeName" : "TestEmployee_4"} { "_id" : { "$oid" : "5387838d3641024de174c798"} , "employeeId" : 5 , "employeeName" : "TestEmployee_5"} ``` ## 6\. MongoDB 小于或大于子句示例 ```java private static void lessThan_GreaterThan_Example(DBCollection collection) { BasicDBObject getQuery = new BasicDBObject(); getQuery.put("employeeId", new BasicDBObject("$gt", 2).append("$lt", 5)); DBCursor cursor = collection.find(getQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "_id" : { "$oid" : "538783b63641720cd34f98c8"} , "employeeId" : 3 , "employeeName" : "TestEmployee_3"} { "_id" : { "$oid" : "538783b63641720cd34f98c9"} , "employeeId" : 4 , "employeeName" : "TestEmployee_4"} ``` ## 7\. MongoDb `NOT IN`子句示例 ```java private static void negation_Example(DBCollection collection) { BasicDBObject neQuery = new BasicDBObject(); neQuery.put("employeeId", new BasicDBObject("$ne", 4)); DBCursor cursor = collection.find(neQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "_id" : { "$oid" : "538783db3641d3ca9d400510"} , "employeeId" : 1 , "employeeName" : "TestEmployee_1"} { "_id" : { "$oid" : "538783db3641d3ca9d400511"} , "employeeId" : 2 , "employeeName" : "TestEmployee_2"} { "_id" : { "$oid" : "538783db3641d3ca9d400512"} , "employeeId" : 3 , "employeeName" : "TestEmployee_3"} { "_id" : { "$oid" : "538783db3641d3ca9d400514"} , "employeeId" : 5 , "employeeName" : "TestEmployee_5"} //4 is missing { "_id" : { "$oid" : "538783db3641d3ca9d400515"} , "employeeId" : 6 , "employeeName" : "TestEmployee_6"} { "_id" : { "$oid" : "538783db3641d3ca9d400516"} , "employeeId" : 7 , "employeeName" : "TestEmployee_7"} { "_id" : { "$oid" : "538783db3641d3ca9d400517"} , "employeeId" : 8 , "employeeName" : "TestEmployee_8"} { "_id" : { "$oid" : "538783db3641d3ca9d400518"} , "employeeId" : 9 , "employeeName" : "TestEmployee_9"} { "_id" : { "$oid" : "538783db3641d3ca9d400519"} , "employeeId" : 10 , "employeeName" : "TestEmployee_10"} ``` ## 8\. MongoDB 查找匹配多個字段的文檔示例 ```java private static void andLogicalComparison_Example(DBCollection collection) { BasicDBObject andQuery = new BasicDBObject(); List<BasicDBObject> obj = new ArrayList<BasicDBObject>(); obj.add(new BasicDBObject("employeeId", 2)); obj.add(new BasicDBObject("employeeName", "TestEmployee_2")); andQuery.put("$and", obj); System.out.println(andQuery.toString()); DBCursor cursor = collection.find(andQuery); while (cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "$and" : [ { "employeeId" : 2} , { "employeeName" : "TestEmployee_2"}]} { "_id" : { "$oid" : "5387840336418a41167caaa4"} , "employeeId" : 2 , "employeeName" : "TestEmployee_2"} ``` ## 9\. MongoDb 查找匹配`REGEX`的文檔示例 ```java private static void regex_Example(DBCollection collection) { BasicDBObject regexQuery = new BasicDBObject(); regexQuery.put("employeeName", new BasicDBObject("$regex", "TestEmployee_[3]") .append("$options", "i")); System.out.println(regexQuery.toString()); DBCursor cursor = collection.find(regexQuery); while (cursor.hasNext()) { System.out.println(cursor.next()); } } ``` 程序輸出: ```java { "employeeName" : { "$regex" : "TestEmployee_[3]" , "$options" : "i"}} { "_id" : { "$oid" : "538784213641917ce7068c57"} , "employeeId" : 3 , "employeeName" : "TestEmployee_3"} ``` ## 10\. 所有 mondodb 查找查詢示例 ```java package examples.mongodb.crud; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.MongoClient; import com.mongodb.WriteResult; public class MongoDBSelectExample { private static void setUpTestData(DBCollection collection){ for (int i=1; i <= 10; i++) { collection.insert(new BasicDBObject().append("employeeId", i).append("employeeName", "TestEmployee_"+i)); } } public static void main(String[] args) throws UnknownHostException { MongoClient mongo = new MongoClient("localhost", 27017); DB db = mongo.getDB("howtodoinjava"); DBCollection collection = db.getCollection("users"); //Delete All documents before running example again WriteResult result = collection.remove(new BasicDBObject()); System.out.println(result.toString()); //Set up test data setUpTestData(collection); //Select all document from a collection selectAllRecordsFromACollection(collection); //Select first document in collection selectFirstRecordInCollection(collection); //Select single document and single field based on record number selectSingleRecordAndFieldByRecordNumber(collection); //Select all documents where record number = n selectAllRecordByRecordNumber(collection); //In example in_Example(collection); //Less than OR greater than example lessThan_GreaterThan_Example(collection); //Select document where record number != n negation_Example(collection); //And logical comparison query example andLogicalComparison_Example(collection); //Select documents based on regex match LIKE example regex_Example(collection); } private static void selectFirstRecordInCollection(DBCollection collection) { DBObject dbObject = collection.findOne(); System.out.println(dbObject); } private static void selectAllRecordsFromACollection(DBCollection collection) { DBCursor cursor = collection.find(); while(cursor.hasNext()) { System.out.println(cursor.next()); } } private static void selectSingleRecordAndFieldByRecordNumber(DBCollection collection) { BasicDBObject whereQuery = new BasicDBObject(); whereQuery.put("employeeId", 5); BasicDBObject fields = new BasicDBObject(); fields.put("employeeId", 1); DBCursor cursor = collection.find(whereQuery, fields); while (cursor.hasNext()) { System.out.println(cursor.next()); } } private static void selectAllRecordByRecordNumber(DBCollection collection) { BasicDBObject whereQuery = new BasicDBObject(); whereQuery.put("employeeId", 5); DBCursor cursor = collection.find(whereQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } private static void in_Example(DBCollection collection) { BasicDBObject inQuery = new BasicDBObject(); List<Integer> list = new ArrayList<Integer>(); list.add(2); list.add(4); list.add(5); inQuery.put("employeeId", new BasicDBObject("$in", list)); DBCursor cursor = collection.find(inQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } private static void lessThan_GreaterThan_Example( DBCollection collection) { BasicDBObject gtQuery = new BasicDBObject(); gtQuery.put("employeeId", new BasicDBObject("$gt", 2).append("$lt", 5)); DBCursor cursor = collection.find(gtQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } private static void negation_Example(DBCollection collection) { BasicDBObject neQuery = new BasicDBObject(); neQuery.put("employeeId", new BasicDBObject("$ne", 4)); DBCursor cursor = collection.find(neQuery); while(cursor.hasNext()) { System.out.println(cursor.next()); } } private static void andLogicalComparison_Example(DBCollection collection) { BasicDBObject andQuery = new BasicDBObject(); List<BasicDBObject> obj = new ArrayList<BasicDBObject>(); obj.add(new BasicDBObject("employeeId", 2)); obj.add(new BasicDBObject("employeeName", "TestEmployee_2")); andQuery.put("$and", obj); System.out.println(andQuery.toString()); DBCursor cursor = collection.find(andQuery); while (cursor.hasNext()) { System.out.println(cursor.next()); } } private static void regex_Example(DBCollection collection) { BasicDBObject regexQuery = new BasicDBObject(); regexQuery.put("employeeName", new BasicDBObject("$regex", "TestEmployee_[3]") .append("$options", "i")); System.out.println(regexQuery.toString()); DBCursor cursor = collection.find(regexQuery); while (cursor.hasNext()) { System.out.println(cursor.next()); } } } ``` 所有這些都是通過**從 MongoDB** 中獲取文件的不同技術。 學習愉快! 參考文獻: [MongoDB `find()`文檔](https://docs.mongodb.com/manual/reference/method/db.collection.find/)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看