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

    MongoDB ไม่อนุญาตให้อ้างอิงคอลเลกชันที่มีชื่อเป็นตัวเลขโดยตรง (เช่น db.2536464.drop() จะผิดพลาด) ต้องใช้เมธอด db.getCollection() แทน รูปแบบคำสั่ง db.getCollection(yourNumericCollectionName).drop(); ตัวอย่างการสร้างและลบคอลเลกชันชื่อตัวเลข > db.createCollection(2536464); { ok: 1 } > db.getCo

  2. วิธีคืนค่าฟิลด์เฉพาะ (Projection) ใน MongoDB

    ใช้เมธอด find() พร้อมพารามิเตอร์ที่สอง (Projection) เพื่อระบุฟิลด์ที่ต้องการคืนค่า ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมข้อมูล: > db.specificFieldDemo.insertOne({FirstName:John,LastName:Doe}); { acknowledged : true, insertedId : ObjectId(5cb8019a623186894665ae31) } > db.specificFieldDemo.inser

  3. ทำไม SHOW DBS ไม่แสดงฐานข้อมูลของฉันใน MongoDB

    คำสั่ง SHOW DBS จะไม่แสดงฐานข้อมูลที่คุณสร้างขึ้น หากยังไม่ได้สร้างเอกสาร (Document) ในคอลเลกชันภายในฐานข้อมูลนั้น ฐานข้อมูลจะปรากฏเมื่อมีข้อมูลจริงถูกเขียนเข้าไป ตัวอย่างการทดสอบ สร้าง/สลับไปใช้ฐานข้อมูล web: > use web; switched to db web แสดงฐานข้อมูลทั้งหมด (ยังไม่เห็น web): > show dbs; ผลล

  4. วิธีลบค่า null ออกจากอาร์เรย์ใน MongoDB ด้วย $pull

    ใช้ตัวดำเนินการ $pull เพื่อลบค่า null ออกจากอาร์เรย์ ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารที่มีอาร์เรย์ประกอบด้วย null: > db.removeNullDemo.insertOne( ... { ... _id : 1, ... StudentDetails : [ ... { FirstName: John, LastName:Smith }, ... { Age:21 }, ... null ... ] ... } ..

  5. วิธีใช้เงื่อนไขเฉพาะเมื่อฟิลด์มีอยู่ใน MongoDB (Conditional Query)

    ใช้ตัวดำเนินการ $or เพื่อใช้เงื่อนไขก็ต่อเมื่อฟิลด์มีอยู่จริง ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมข้อมูล (เอกสารบางรายการไม่มีฟิลด์ StudentAge): > db.applyConditionDemo.insertOne({StudentName:Larry,StudentAge:21,StudentMarks:45}); { acknowledged : true, insertedId : ObjectId(5cb80b78623186894665

  6. วิธีลบคอลเลกชัน MongoDB ที่ชื่อ 'group' (คำสงวน)

    group เป็นชื่อเมธอดใน MongoDB ไม่ควรใช้เป็นชื่อคอลเลกชัน แต่หากสร้างไว้แล้ว สามารถลบได้ด้วย getCollection(group).drop() ตัวอย่างการสร้างและลบคอลเลกชันชื่อ group สร้างคอลเลกชันและเพิ่มข้อมูล: > db.createCollection(group); { ok : 1 } > db.getCollection(group).insertOne({StudentName:Chris}); { ac

  7. ความแตกต่างระหว่าง find() และ findOne() ใน MongoDB

    findOne() คืนค่าเอกสารแรกที่ตรงเงื่อนไข หากไม่พบคืนค่า null ส่วน find() คืนค่า Cursor เสมอ (ไม่คืนค่า null) ตัวอย่างการทดสอบกับคอลเลกชันว่าง สร้างคอลเลกชันว่าง: > db.createCollection(emptyCollection); { ok : 1 } นับจำนวนเอกสาร: > db.emptyCollection.count(); ผลลัพธ์: 0 ทดสอบ findOne() กับคอลเลก

  8. การตั้งค่า max บน MongoDB Capped Collection

    Capped Collections เป็นคอลเลกชันขนาดคงที่ที่รองรับการดำเนินการสูงสำหรับการแทรกและดึงเอกสารตามลำดับการแทรก สำหรับการตั้งค่า max (จำนวนเอกสารสูงสุด) ใช้ไวยากรณ์: db.createCollection(yourCollectionName, {capped:true, size:yourSizeValue, max:yourMaxValue}); ตัวอย่างการใช้งาน สร้าง Capped Collection ชื่อ

  9. วิธีค้นหาเอกสารที่มีฟิลด์เป็น NaN ใน MongoDB

    เพื่อค้นหาเอกสารที่มีฟิลด์เป็น NaN (Not a Number) ใน MongoDB ใช้ไวยากรณ์ดังนี้: db.yourCollectionName.find( { yourFieldName: NaN }) ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมข้อมูลที่มีการหารด้วยศูนย์ (สร้าง NaN และ Infinity): > db.nanDemo.insertOne({Score:0/0}); { acknowledged : true, insertedId : Ob

  10. วิธีพิมพ์ตัวแปรที่ MongoDB Command Prompt

    เพื่อพิมพ์ค่าตัวแปรที่ MongoDB Shell ใช้ไวยากรณ์ดังนี้: // ประกาศและกำหนดค่าตัวแปร var anyVariableName=yourValue; // พิมพ์ค่าตัวแปร yourVariableName; // หรือ print(yourVariableName); ตัวอย่าง: ตัวแปรตัวเลข > var myIntegerValue=20; พิมพ์ค่าตัวแปร: > myIntegerValue ผลลัพธ์: 20 ใช้ print(): >

  11. วิธีคิวรี่ Top N Rows ใน MongoDB ด้วย Aggregation Framework

    เพื่อคิวรี่ Top N Rows ใน MongoDB ใช้ Aggregation Framework ร่วมกับ $sort และ $limit ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมข้อมูลนักเรียนและคะแนน: > db.topNRowsDemo.insertOne({StudentName:Larry,Score:78}); { acknowledged : true, insertedId : ObjectId(5ca26eee6304881c5ce84b91) } > db.topNRowsDem

  12. การหาค่าสัมบูรณ์ (Absolute Value) ด้วย MongoDB Aggregation Framework

    ใช้ตัวดำเนินการ $abs ใน Aggregation Framework เพื่อหาค่าสัมบูรณ์ ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมข้อมูลตัวเลขบวกและลบ: > db.absoluteValueDemo.insert({Value:98}); WriteResult({ nInserted : 1 }) > db.absoluteValueDemo.insert({Value:-100}); WriteResult({ nInserted : 1 }) > db.absoluteValu

  13. วิธีค้นหาและแก้ไขค่าใน Nested Array ด้วย MongoDB

    เพื่อค้นหาและแก้ไขค่าใน Nested Array (อาร์เรย์ซ้อน) สามารถใช้คำสั่ง update ร่วมกับ $elemMatch และ $set ได้ ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารที่มีอาร์เรย์ DeveloperDetails: > db.findAndModifyAValueInNestedArrayDemo.insertOne( ... { ... CompanyName : Amazon, ... DeveloperDetails : [ .

  14. วิธีคิวรี่อาร์เรย์สตริงด้วย Regular Expression ใน MongoDB

    เพื่อคิวรี่อาร์เรย์สตริงด้วย Regular Expression ใช้ไวยากรณ์ดังนี้: db.yourCollectionName.find( { yourFieldName: /yourStartingValue./ } ).pretty(); ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารที่มีฟิลด์ StudentFullName เป็นอาร์เรย์: > db.queryArrayDemo.insertOne({StudentFullName:[Carol Taylor,Carol

  15. วิธีคิวรี่คีย์ที่มีช่องว่างในชื่อฟิลด์ด้วย MongoDB

    เพื่อคิวรี่คีย์ที่มีช่องว่างในชื่อ สามารถใช้การเข้าถึงแบบ Dot Notation (.) ได้ ขั้นตอนที่ 1: สร้างข้อมูลที่มีคีย์ประกอบด้วยช่องว่าง > myValues[Details] = {} { } > myValues[Details][Student Name]=John; John > myValues[Details][StudentAge]=26; 26 ขั้นตอนที่ 2: สร้างคอลเลกชันและบันทึกเอกสาร &g

  16. วิธีโปรเจกต์ฟิลด์เฉพาะจากเอกสารภายในอาร์เรย์ใน MongoDB

    เพื่อโปรเจกต์ฟิลด์เฉพาะจากเอกสารภายในอาร์เรย์ สามารถใช้ตัวดำเนินการตำแหน่ง $ (Positional Operator) ได้ ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารที่มีอาร์เรย์ StudentDetails: > db.projectSpecificFieldDemo.insertOne( ... { ... UniqueId: 101, ... StudentDetails : [ ... {StudentName : Chris

  17. เทียบเท่า WHERE IN(1,2,...) ใน MongoDB คืออะไร?

    ใน MongoDB เทียบเท่ากับคำสั่ง SQL WHERE IN(1,2,...) คือการใช้ตัวดำเนินการ $in ไวยากรณ์มีดังนี้: db.yourCollectionName.find({yourFieldName:{$in:[yourValue1,yourValue2,....N]}}).pretty(); ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารตัวอย่าง: > db.whereInDemo.insertOne({StudentName:John,StudentMathSc

  18. การเปลี่ยนชื่อฟิลด์ (Column) ในคอลเลกชัน MongoDB

    ใช้ตัวดำเนินการ $rename ร่วมกับ update() เพื่อเปลี่ยนชื่อฟิลด์ในทุกเอกสารของคอลเลกชัน รูปแบบคำสั่ง db.yourCollectionName.update({}, {$rename: {yourOldColumnName: yourNewColumnName}}, false, true); พารามิเตอร์ false, true หมายถึง upsert: false, multi: true (อัปเดททุกเอกสารที่ตรงเงื่อนไข) ตัวอย่างข้

  19. วิธีหยุดการทำงานของสคริปต์ MongoDB Shell ก่อนเวลา

    ใน MongoDB Shell สามารถใช้คำสั่ง quit() หรือ quit(1) เพื่อออกจากเชลล์หรือหยุดการทำงานของสคริปต์ทันที รูปแบบคำสั่ง quit() quit(1) ตัวอย่างการใช้งาน > db.flightInformation.insertOne({FlightName: Flight-1, ArrivalTime: new ISODate(2019-03-12)}); { acknowledged: true, insertedId: ObjectId(5ca1e341e

  20. การเพิ่มฟิลด์ใหม่ให้ทุกเอกสารในคอลเลกชันขนาดใหญ่ของ MongoDB

    เมื่อต้องการเพิ่มฟิลด์ใหม่ให้กับทุกเอกสารในคอลเลกชันขนาดใหญ่ สามารถใช้ find().forEach() ร่วมกับ update() หรือ updateOne() เพื่อประมวลผลทีละเอกสาร ตัวอย่างข้อมูลทดสอบ > db.addingNewPropertyDemo.insertOne({StudentName: John, StudentAge: 23, CountryName: US}); { acknowledged: true, insertedId: Obje

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