IT评测·应用市场-qidao123.com

标题: 使用PyMongo操作MongoDB(二) [打印本页]

作者: 西河刘卡车医    时间: 2025-3-19 22:03
标题: 使用PyMongo操作MongoDB(二)
四、文档操作详解

1. 插入文档

  1. # 插入单条文档
  2. student_data = {
  3.     "name": "张三",
  4.     "age": 20,
  5.     "gender": "男",
  6.     "courses": ["数学", "英语"]
  7. }
  8. result = students.insert_one(student_data)
  9. print(f"插入的文档ID:{result.inserted_id}")
  10. # 批量插入文档
  11. students.insert_many([
  12.     {"name": "李四", "age": 22, "gender": "女"},
  13.     {"name": "王五", "age": 21, "gender": "男"}
  14. ])
复制代码
2. 查询文档

底子查询

  1. # 查询所有文档
  2. for doc in students.find():
  3.     print(doc)
  4. # 查询单个文档
  5. print(students.find_one({"name": "张三"}))
复制代码
字段投影

  1. # 仅返回name和age字段(_id默认返回)
  2. for doc in students.find({}, {"name": 1, "age": 1}):
  3.     print(doc)
  4. # 排除_id字段
  5. for doc in students.find({}, {"_id": 0, "name": 1}):
  6.     print(doc)
复制代码
条件查询


3. 更新文档

  1. # 更新单个文档(设置新字段)
  2. students.update_one(
  3.     {"name": "张三"},
  4.     {"$set": {"major": "计算机科学"}}
  5. )
  6. # 批量更新(年龄加1)
  7. students.update_many(
  8.     {"gender": "男"},
  9.     {"$inc": {"age": 1}}
  10. )
  11. # 替换整个文档
  12. students.replace_one(
  13.     {"name": "李四"},
  14.     {"name": "李四", "age": 23, "gender": "女", "major": "电子信息"}
  15. )
复制代码
4. 删除文档

  1. # 删除单个匹配文档
  2. students.delete_one({"name": "王五"})
  3. # 删除所有匹配文档
  4. students.delete_many({"age": {"$lt": 18}})
复制代码
五、高级操作技巧

六、留意事项

通过本文的具体讲解,开发者可以快速把握PyMongo的核心操作。实际开发中应根据具体业务需求,结合MongoDB的丰富特性(如地理空间索引、变乱支持等)进行深度开发。建议参考官方文档获取最新API说明和最佳实践。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) Powered by Discuz! X3.4