Mongodb- မေးမြန်းချက်များတွင် or အော်ပရေတာ ($or) ကို မည်သို့အသုံးပြုရမည်နည်း။


သင်သည် စံသတ်မှတ်ချက်များစွာနှင့် ကိုက်ညီသည့် စာရွက်စာတမ်းများကို ရှာဖွေရန် MongoDB ရှိ $ သို့မဟုတ် အော်ပရေတာတွင် အသုံးပြုနိုင်သည်။

ဤအော်ပရေတာသည် အောက်ပါအခြေခံ syntax ကိုအသုံးပြုသည်-

 db.myCollection.find({
  “ $or ”: [
    {" field1 ": " hello "},
    {" field2 ": { $gte : 10 }}
  ]
})

ဥပမာ သည် myCollection ဟုခေါ်သော စုစည်းမှုတွင် စာရွက်စာတမ်း အားလုံးကို ရှာဖွေ သည်

အောက်ဖော်ပြပါ ဥပမာများသည် အောက်ပါစာရွက်စာတမ်းများပါရှိသော စုစည်းမှု အဖွဲ့ နှင့် လက်တွေ့တွင် ဤ syntax ကို မည်သို့အသုံးပြုရမည်ကို ပြသသည်-

 db.teams.insertOne({team: " Mavs ", points: 30, rebounds: 8})
db.teams.insertOne({team: " Mavs ", points: 35, rebounds: 12})
db.teams.insertOne({team: " Spurs ", points: 20, rebounds: 7})
db.teams.insertOne({team: " Spurs ", points: 25, rebounds: 5})
db.teams.insertOne({team: " Spurs ", points: 23, rebounds: 9})

ဥပမာ 1- အကွက်နှစ်ခုပါသော OR အော်ပရေတာကို အသုံးပြုပါ။

အောက်ပါကုဒ်သည် “ အသင်း” အကွက်သည် “ စပါး” နှင့် ညီမျှသည့် အသင်း များစုစည်းမှုတွင် စာရွက်စာတမ်းအားလုံးကို မည်သို့ရှာဖွေရမည်ကို ပြသသည် သို့မဟုတ် “ အမှတ်” အကွက်၏တန်ဖိုးသည် 31 ထက်ကြီးသည် သို့မဟုတ် ညီမျှသည်-

 db.teams.find({
  “ $or ”: [
    {" team ": " Spurs "},
    {" points ": { $gte : 31 }}
  ]
})

ဤမေးမြန်းချက်သည် အောက်ပါစာရွက်စာတမ်းများကို ပြန်ပေးသည်-

 { _id: ObjectId("62018750fd435937399d6b6f"),
  team: 'Mavs',
  points: 35,
  rebounds: 12 }
{ _id: ObjectId("62018750fd435937399d6b70"),
  team: 'Spurs',
  points: 20,
  rebounds: 7 }
{ _id: ObjectId("62018750fd435937399d6b71"),
  team: 'Spurs',
  points: 25,
  rebounds: 5 }
{ _id: ObjectId("62018750fd435937399d6b72"),
  team: 'Spurs',
  points: 23,
  rebounds: 9 }

အထွက်ရှိ စာရွက်စာတမ်းတစ်ခုစီတွင် အသင်းအကွက်တွင် “ စပါး” ပါဝင်သည် သို့မဟုတ် အမှတ်အကွက်တွင် 31 ထက်ကြီးသော သို့မဟုတ် ညီမျှသည့်တန်ဖိုးကို သတိပြုပါ။

ဥပမာ 2- အကွက်နှစ်ခုထက်ပိုသော OR အော်ပရေတာကို အသုံးပြုခြင်း။

အောက်ပါကုဒ်သည် ” အဖွဲ့ ” အကွက်သည် “ Mavs” နှင့် ညီမျှသည့် သို့မဟုတ် “ အမှတ်” အကွက်၏ တန်ဖိုးသည် 25 ထက် ကြီးသည် သို့မဟုတ် ညီမျှသော သို့မဟုတ် “ ပြန်ယူခြင်း” အကွက်၏ တန်ဖိုးကို အောက်ပါကုဒ်တွင် ဖော်ပြသည် 8 ထက်နည်းသည်

 db.teams.find({
  “ $or ”: [
    {" team ": " Mavs "},
    {" points ": { $gte : 25 }},
    {" rebounds ": { $lt : 8 }}
  ]
})

ဤမေးမြန်းချက်သည် အောက်ပါစာရွက်စာတမ်းကို ပြန်ပေးသည်-

 { _id: ObjectId("62018750fd435937399d6b6e"),
  team: 'Mavs',
  points: 30,
  rebounds: 8 }
{ _id: ObjectId("62018750fd435937399d6b6f"),
  team: 'Mavs',
  points: 35,
  rebounds: 12 }
{ _id: ObjectId("62018750fd435937399d6b70"),
  team: 'Spurs',
  points: 20,
  rebounds: 7 }
{ _id: ObjectId("62018750fd435937399d6b71"),
  team: 'Spurs',
  points: 25,
  rebounds: 5 }

ဤစာရွက်စာတမ်းတစ်ခုစီသည် စံသတ်မှတ်ချက်သုံးခုအနက် တစ်ခု သို့မဟုတ် တစ်ခုထက်ပို၍ ပြည့်စုံကြောင်း သတိပြုပါ။

  • “ အသင်း” အကွက်သည် ” Mavs ” နှင့် ညီမျှသည်
  • “အမှတ်များ” အကွက်သည် 25 ထက်ကြီးသော သို့မဟုတ် ညီမျှသည့်တန်ဖိုးရှိသည်။
  • “ rebounds” အကွက်သည် 8 ထက်နည်းသောတန်ဖိုးရှိသည်။

မှတ်ချက်$ သို့မဟုတ် လုပ်ဆောင်ချက်အတွက် စာရွက်စာတမ်းအပြည့်အစုံကို ဤနေရာတွင် ရှာနိုင်သည်။

ထပ်လောင်းအရင်းအမြစ်များ

အောက်ဖော်ပြပါ သင်ခန်းစာများသည် MongoDB တွင် အခြားသော ဘုံလုပ်ဆောင်ချက်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-

MongoDB- မေးမြန်းချက်များတွင် AND အော်ပရေတာအား မည်သို့အသုံးပြုရမည်နည်း။
MongoDB- အကွက်တွင် စာကြောင်းပါရှိမရှိ စစ်ဆေးနည်း
MongoDB- “ NO IN” မေးခွန်းကို ဘယ်လိုသုံးမလဲ။
MongoDB- သီးခြားအကွက်တစ်ခုတွင် “ not null” ကို မည်သို့ရှာဖွေမည်နည်း။

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်