Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB
MongoDB
  1. วิธีค้นหาเอกสารที่ลงท้ายด้วยอักขระเฉพาะใน MongoDB

    การค้นหาเอกสารที่ค่าฟิลด์ลงท้ายด้วยอักขระเฉพาะใน MongoDB ใช้ $regex operator ร่วมกับ Regular Expression anchor $ (end of string) เพื่อค้นหาเอกสารที่ค่าของฟิลด์ลงท้ายด้วยอักขระหรือข้อความที่กำหนด ไวยากรณ์ db.yourCollectionName.find({yourFieldName: {$regex: yourEndingCharacter$}}).pretty(); ตัวอย่าง

  2. สามารถ Query บน Index ได้หรือไม่เมื่อ Query มี $or Operator ใน MongoDB

    การใช้ Index ร่วมกับ $or Operator ใน MongoDB ใช่ สามารถใช้ Index ได้เมื่อ Query มี $or operator โดย MongoDB จะใช้ Index สำหรับแต่ละเงื่อนไขใน $or แยกกัน แล้วรวมผลลัพธ์เข้าด้วยกัน การสร้าง Index > db.indexOrQueryDemo.ensureIndex({First:1}); { createdCollectionAutomatically : false, numIndexesBefo

  3. วิธีค้นหา Array ที่ตรงกันแม้ลำดับต่างกันใน MongoDB

    การค้นหา Array Match แบบ Exact แต่ไม่สนลำดับใน MongoDB เมื่อต้องการค้นหาเอกสารที่มี array field ตรงตามค่าที่กำหนดทั้งหมด แต่ไม่สนใจลำดับของค่าใน array ใช้การรวม $all และ $size operators ตัวอย่างการสร้างคอลเลกชันและเพิ่มข้อมูล > db.exactMatchArrayDemo.insertOne({StudentName:David,StudentAge:22,St

  4. วิธีเปรียบเทียบค่าฟิลด์ใน MongoDB

    การเปรียบเทียบค่าระหว่างฟิลด์ใน MongoDB ใน MongoDB สามารถเปรียบเทียบค่าระหว่างฟิลด์ภายในเอกสารเดียวกันได้โดยใช้ 오อเปอเรเตอร์ $where ซึ่งอนุญาตให้ใช้ JavaScript expression ในการสืบค้น ตัวอย่างการสร้างคอลเลกชันและเพิ่มข้อมูล > db.comparingFieldDemo.insertOne({Value1:30,Value2:40}); { acknowledged

  5. วิธีลบเอกสารทั้งหมดยกเว้นเอกสารเดียวใน MongoDB

    การลบเอกสารทั้งหมดยกเว้นเอกสารที่ต้องการใน MongoDB เพื่อลบเอกสารทั้งหมดในคอลเลกชันยกเว้นเอกสารที่ตรงตามเงื่อนไขที่กำหนด ใช้เมธอด remove() ร่วมกับออเปอเรเตอร์ $ne (not equal) ตัวอย่างการสร้างคอลเลกชันและเพิ่มข้อมูล > db.removeAllDocumentsExceptOneDemo.insertOne({StudentName:Larry,StudentAge:21});

  6. วิธีวนลูปผ่านคอลเลกชันด้วย Cursor ใน MongoDB

    การวนลูปผ่านคอลเลกชันด้วย Cursor ใน MongoDB เมื่อต้องการวนลูปผ่านเอกสารในคอลเลกชัน MongoDB โดยใช้ cursor สามารถใช้รูปแบบโค้ดดังต่อไปนี้: ไวยากรณ์พื้นฐาน var anyVariableName1; var anyVariableName2 = db.yourCollectionName.find(); while(yourVariableName2.hasNext()) { yourVariableName1 = yourVar

  7. วิธีเปลี่ยนชื่อ Collection ใน MongoDB ด้วย renameCollection()

    ใช้เมธอด renameCollection() บน Collection Object เพื่อเปลี่ยนชื่อ Collection ได้โดยตรง รูปแบบคำสั่ง db.oldCollectionName.renameCollection(newCollectionName); ตัวอย่างเต็มรูปแบบ 1. สร้าง Collection และข้อมูลตัวอย่าง > db.savingInformationDemo.insertOne({ StudentName: Larry }); > db.savingInf

  8. วิธี Conditional Upsert/Update ใน MongoDB ด้วย $max Operator

    ใช้ Operator $max เพื่ออัปเดตค่าเฉพาะเมื่อค่าใหม่ มากกว่า ค่าเดิม (Conditional Update) เหมาะสำหรับเก็บค่าสูงสุด (High Score, Max Value) รูปแบบคำสั่ง db.collection.update( { query }, { $max: { fieldName: newValue } } ); อัปเดต ก็ต่อเมื่อ ค่าปัจจุบัน ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่า

  9. วิธีอัปเดตสอง Array แยกกันในเอกสารเดียวครั้งเดียวด้วย $push

    ใช้ $push ระบุหลายฟิลด์พร้อมกันใน Object เดียว เพื่อเพิ่มค่าเข้าไปในหลาย Array ในเอกสารเดียวกัน รูปแบบคำสั่ง db.collection.update( { query }, { $push: { arrayField1: value1, arrayField2: value2 }} ); ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่าง (มี 2 Array Fields) > d

  10. วิธีอัปเดตค่าเป็นตัวพิมพ์เล็ก (Lowercase) ใน MongoDB ด้วย forEach และ toLowerCase()

    MongoDB มี operator $toLower ใน Aggregation แต่สำหรับ Update จริง ต้องใช้ forEach() วนลูปอัปเดตทีละเอกสาร (หรือใช้ Aggregation Pipeline ใน MongoDB 4.2+) วิธีที่ 1: forEach + toLowerCase() (Classic Shell) 1. สร้างข้อมูลตัวอย่าง > db.toLowerDemo.insertOne({StudentId:101,StudentName:John}); > d

  11. วิธีดึงค่า Distinct พร้อมเรียงลำดับ (Sorted) ใน MongoDB

    ใช้เมธอด distinct() ตามด้วย .sort() เพื่อดึงค่าที่ไม่ซ้ำและเรียงลำดับอัตโนมัติ รูปแบบคำสั่ง db.collection.distinct(fieldName).sort(); ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่าง (มีค่าซ้ำ) > db.getDistinctWithSortedDataDemo.insertOne({StudentId:10,StudentName:John,StudentAge:23}); > db.getDis

  12. วิธีรวม (Sum) สองฟิลด์ใน MongoDB ด้วย Aggregation $project และ $add

    ใช้ Stage $project ร่วมกับ Operator $add ใน Aggregation Pipeline เพื่อคำนวณผลรวมของสองฟิลด์ รูปแบบคำสั่ง db.collection.aggregate([ { $project: { field1: 1, field2: 1, sumField: { $add: [ $field1, $field2 ] } }} ]); ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่าง > db.

  13. วิธีอัปเดตค่า Key ใน Array ของ JSON Document ใน MongoDB

    MongoDB ไม่มี operator ตรงๆ สำหรับ update ทุก element ใน Array of Objects ต้องดึงเอกสารมา แก้ไขใน JavaScript แล้ว $set ทับกลับไป แนวคิด findOne() ดึงเอกสารมา วนลูป forEach() แก้ค่าใน Array update() + $set เขียนทับ Array ทั้งชุด ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูล: Document มี Array of Objects >

  14. วิธีจัดการทุก Database จาก MongoDB Shell ด้วย listDatabases

    ใช้ db.adminCommand(listDatabases) เพื่อดึงรายชื่อและข้อมูล Database ทั้งหมดจาก MongoDB Shell ขั้นตอนการทำงาน 1. ตรวจสอบ Database ปัจจุบัน > db; Test 2. เรียก listDatabases ผ่าน adminCommand > var allDatabaseList = db.adminCommand(listDatabases); 3. แสดงผลลัพธ์ด้วย printjson > printjson

  15. วิธีเปลี่ยนรหัสผ่านผู้ใช้ใน MongoDB ด้วย changeUserPassword()

    ใช้เมธอด db.changeUserPassword() ใน database admin เพื่อเปลี่ยนรหัสผ่านของ User ที่มีอยู่แล้ว รูปแบบคำสั่ง db.changeUserPassword(username, newPassword); ขั้นตอนการเปลี่ยนรหัสผ่าน 1. สลับไป database admin > use admin switched to db admin 2. ดูรายชื่อ User ที่มีอยู่ > db.getUsers(); [ {

  16. วิธีลบเอกสารภายใน Array ใน MongoDB ด้วย $pull Operator

    ใช้ $pull ร่วมกับ update() เพื่อลบ Element (Sub-document) ออกจาก Array ตามเงื่อนไข รูปแบบคำสั่ง db.collection.update( { query }, { $pull: { arrayField: { subField: valueToMatch } } }, { multi: true } // อัปเดททุกเอกสารที่ match (legacy) ); ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูล: Array of

  17. วิธีซ่อน _id จากผลลัพธ์ Query ใน MongoDB (Projection)

    ใช้ Projection ใน find() ระบุ { _id: 0 } เพื่อ exclude _id ออกจากผลลัพธ์ รูปแบบคำสั่ง db.collection.find({}, { _id: 0 }); ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่าง > db.removeIdDemo.insertOne({UserName:John,UserAge:23}); > db.removeIdDemo.insertOne({UserName:Mike,UserAge:27}); > db.remov

  18. Upsert ใน MongoDB ด้วย Custom _id: Insert ถ้าไม่มี Error ถ้ามีอยู่แล้ว

    เมื่อใช้ Custom _id (กำหนด _id เอง) การ insert() จะ error ถ้า _id ซ้ำ ต้องใช้ update() พร้อม upsert: true แทน ปัญหาของ insert() กับ Custom _id > db.customIdDemo.insert({ _id: 1, StudentName: John }); WriteResult({ nInserted : 1 }) > db.customIdDemo.insert({ _id: 1, StudentName: Carol }); //

  19. วิธีวนลูปผ่านทุก Database ใน MongoDB Shell

    ใช้ getSiblingDB(admin) และ runCommand({ listDatabases: 1 }) เพื่อดึงรายชื่อ database ทั้งหมด แล้ววนลูปเข้าถึงแต่ละอัน ขั้นตอนการทำงาน 1. สลับไป database admin และดึงรายชื่อ database > switchDatabaseAdmin = db.getSiblingDB(admin); > allDatabaseName = switchDatabaseAdmin.runCommand({ listData

  20. วิธี Query MongoDB ตามความยาวสตริง (String Length) ด้วย Regex

    ใช้ Regular Expression ($regex) เพื่อค้นหาเอกสารที่ความยาวของสตริงอยู่ในช่วงที่กำหนด รูปแบบ Regex สำหรับความยาว // ความยาวระหว่าง min ถึง max /^.{min,max}$/ // ความยาวแน่นอน /^.{exactLength}$/ // ความยาวมากกว่าหรือเท่ากับ min /^.{min,}$/ ตัวอย่างเต็มรูปแบบ 1. สร้างข้อมูลตัวอย่าง (ชื่อ-นามสกุล ค

Total 1351 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:58/68  20-คอมพิวเตอร์/Page Goto:1 52 53 54 55 56 57 58 59 60 61 62 63 64