db.collection.findOne()
åšæ¬é¡µé¢
db.collection.
findOne
(æ¥è¯¢ïŒæåœ±)- è¿åäžäžªæ»¡è¶³éåæè§åŸäžæå®æ¥è¯¢æ¡ä»¶çææ¡£ãåŠæå€äžªææ¡£æ»¡è¶³æ¥è¯¢ïŒåæ€æ¹æ³æ ¹æ®èªç¶è®¢åè¿å第äžäžªææ¡£ïŒè¯¥ææ¡£åæ ç£çäžææ¡£ç orderãåšäžééåäžïŒnatural order äž insert order çžåãåŠææ²¡æææ¡£æ»¡ è¶³æ¥è¯¢ïŒåè¯¥æ¹æ³è¿å nullã
åæ° | ç±»å | æè¿° |
---|---|---|
query | document | å¯éçã䜿çšquery operatorsæå®æ¥è¯¢éæ©æ¡ä»¶ã |
projection | document | å¯éçãäœ¿çšæåœ±æäœåæå®èŠ return çåæ®µãçç¥æ€åæ°ä»¥ return å¹é
ææ¡£äžçææå段ã |
projection
åæ°éçšä»¥äžåœ¢åŒçææ¡£ïŒ{ field1: <boolean>, field2: <boolean> ... }
<boolean>
å¯ä»¥æ¯ä»¥äžå
嫿æé€åŒä¹äžïŒ1
ætrue
å æ¬ãå³äœ¿æªåšæåœ±åæ°äžæç¡®æå®å段ïŒfindOne()æ¹æ³ä¹å§ç»å å«_idåæ®µã0
æfalse
æé€ã
projection åæ°äžèœæ··å include å exclude è§åïŒè exception åæé€
_id
åæ®µãè¿åïŒ | äžäžªææ¡£æ»¡è¶³æå®äžºæ€æ¹æ³ç第äžäžªåæ°çæ¡ä»¶ãåŠææå® projection åæ°ïŒfindOne()å°è¿åä»
å
å«projection åæ®µçææ¡£ãé€éæšæç¡®æé€ïŒåŠåå§ç»å
å«_id åæ®µã èœç¶ç±»äŒŒäºfind()æ¹æ³ïŒfindOne()æ¹æ³è¿åææ¡£èäžæ¯æžžæ ã |
ä»MongoDB 4.2åŒå§ïŒåŠæååº
db.collection.findOne()
æåŒè¿æ¥ç客æ·ç«¯åšæäœå®æä¹åæåŒè¿æ¥ïŒåMongoDBå°æ è®°db.collection.findOne()
äžºç»æ¢ïŒå³killOp
åšæäœäžïŒãä»¥äžæäœä»bios ç³»åè¿ååäžªææ¡£ïŒ
db.bios.findOne()
ä»¥äžæäœè¿åbios ç³»åäžç第äžäžªå¹é
ææ¡£ïŒå
¶äžåµå
¥ææ¡£
name
äžçåæ®µfirst
以忝G
åŒå€ŽïŒæå段birth
å°äºnew Date('01/01/1945')
ïŒdb.bios.findOne(
{
$or: [
{ 'name.first' : /^G/ },
{ birth: { $lt: new Date('01/01/1945') } }
]
}
)
projection
åæ°æå® return çåªäºå段ãé€éæé€å±äº_id
åæ®µïŒåŠåè¯¥åæ°å
å« include æ exclude è§èïŒèäžæ¯äž€è
ãä»¥äžæäœåšbios ç³»åäžæ¥æŸææ¡£ïŒå¹¶ä»
è¿å
name
ïŒcontribs
å_id
åæ®µïŒdb.bios.findOne(
{ },
{ name: 1, contribs: 1 }
)
ä»¥äžæäœè¿åbios ç³»åäžçææ¡£ïŒå
¶äž
contribs
åæ®µå
å«å
çŽ OOP
ïŒå¹¶è¿åé€_id
åæ®µïŒname
åµå
¥ææ¡£äžçfirst
åæ®µåbirth
åæ®µä¹å€çææå段ïŒdb.bios.findOne(
{ contribs: 'OOP' },
{ _id: 0, 'name.first': 0, birth: 0 }
)
æšäžèœå°æžžæ æ¹æ³åºçšäºfindOne()çç»æïŒå 䞺è¿ååäžªææ¡£ãæšå¯ä»¥çŽæ¥è®¿é®è¯¥ææ¡£ïŒ
var myDocument = db.bios.findOne();
â
if (myDocument) {
var myName = myDocument.name;
â
print (tojson(myName));
}
è¯è
ïŒæå é£
æ ¡å¯¹ïŒ
æè¿æŽæ° 1yr ago