iT邦幫忙

2022 iThome 鐵人賽

DAY 26
0
Modern Web

資工琪琪的後端學習筆記(python&flask)系列 第 26

Day 26 MongoDB 篩選、排序資料

  • 分享至 

  • xImage
  •  

篩選文件資料

篩選一筆文件資料

取得符合篩選條件的單一文件放進我們所指定的變數

  • 語法
集合.find_one(篩選條件)
  • 範例
collection=db.website
data=collection.find_one({
    "email":"test@test.com"
})

print(data)

篩選多筆文件資料

取得符合篩選條件的多筆文件資料
他只會回傳cursor物件,所以我們要用for迴圈一筆一筆抓

  • 語法
集合.find(篩選條件)
  • 範例
collection=db.website
cursor=collection.find({
    "level":"3"
})

print(cursor)

for doc in cursor:
    print(doc)

復合的篩選條件

條件須同時成立

使用$and結合多個條件

  • 範例:

collection=db.website
data=collection.find_one({
    "$and":[
        {"email":"test@test.com"},
        {"passwd":"test"}
    ]
})
print(data)

滿足任一條件即可

使用$or結合多個條件,其中一個條件符合篩選即可

  • 範例:

collection=db.website
data=collection.find({
    "$or":[
        {"email":"test@test.com"},
        {"email":"chichi@gmail.com"}
    ]
})
for doc in cursor:
    print(doc)

排序篩選結果

由小排到大

  • 語法
集合.find(篩選條件,sort=排序方式)
  • 範例
collection=db.website
cursor=collection.find({},sort=[("level",pymogo.ASCENDING)])

for doc in cursor:
    print(doc)

由大排到小

  • 語法
集合.find(篩選條件,sort=排序方式)
  • 範例
collection=db.website
cursor=collection.find({},sort=[("level",pymogo.DESCENDING)])

for doc in cursor:
    print(doc)

參考文章與網站

澎澎的教學網站
澎澎的yt教學頻道


上一篇
Day 25 MongoDB 刪除資料
下一篇
Day 27 專案實作 簡易的登入頁面
系列文
資工琪琪的後端學習筆記(python&flask)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言