mongoDB³£¼ûµÄ²éѯË÷Òý£¨Èý£©(Ò»)

2015-07-24 06:20:58 ¡¤ ×÷Õß: ¡¤ ä¯ÀÀ: 11
1. _idË÷Òý
? ? _idË÷ÒýÊǾø´ó¶àÊý¼¯ºÏĬÈϽ¨Á¢µÄË÷Òý
? ? ¶ÔÓÚÿ¸ö²åÈëµÄÊý¾Ý£¬MongoDB»á×Ô¶¯Éú³ÉÒ»ÌõΨһµÄ_id×ֶΡ£
?
> db.jerome_2.collection.insert({x:2})
WriteResult({ "nInserted" : 1 })
> db.jerome_2.collection.getIndexes()
[
? ? {
? ? ? ? "v" : 1,
? ? ? ? "key" : {
? ? ? ? ? ? "_id" : 1
? ? ? ? },
? ? ? ? "name" : "_id_",
? ? ? ? "ns" : "jerome.jerome_2.collection"
? ? }
]
> db.jerome_2.collection.findOne()
{ "_id" : ObjectId("557004f1f2824fa15224e20b"), "x" : 2 }
>?
?
2. µ¥¼üË÷Òý
? ? 1.µ¥¼äË÷ÒýÊÇ×îÆÕͨµÄË÷Òý
? ? 2. Óë_idË÷Òý²»Í¬£¬µ¥¼äË÷Òý²»»á×Ô¶¯´´½¨
?
> db.jerome_2.collection.ensureIndex({x:1}) # ´´½¨Ë÷Òý
{
    "createdCollectionAutomatically" : false,
    "numIndexesBefore" : 1,
    "numIndexesAfter" : 2,
    "ok" : 1
}
> db.jerome_2.collection.getIndexes()
[
    {
        "v" : 1,
        "key" : {
            "_id" : 1
        },
        "name" : "_id_",
        "ns" : "jerome.jerome_2.collection"
    },
    {
        "v" : 1,
        "key" : {
            "x" : 1
        },
        "name" : "x_1",
        "ns" : "jerome.jerome_2.collection"
    }
]
> db.jerome_2.collection.find({x:1}) #ʹÓô´½¨µÄË÷Òý²éѯ
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
> 

?

3. ¶à½¨Ë÷Òý
? ? ¶à¼üË÷ÒýºÍµ¥¼üË÷Òý´´½¨ÐÎʽÏàͬ£¬Çø±ðÔÚÓÚ×ֶεÄÖµ¡£
? ? ? ? µ¥¼üË÷Òý£ºÖµÎªÒ»¸öµ¥Ò»µÄÖµ£¬ÀýÈç×Ö·û´®£¬Êý×Ö»òÕßÈÕÆÚ¡£
? ? ? ? ¶à¼üË÷Òý£ºÖµ¾ßÓжà¸ö¼Ç¼£¬ÀýÈçÊý×é¡£
?
> db.jerome_2.collection.getIndexes()
[
    {
        "v" : 1,
        "key" : {
            "_id" : 1
        },
        "name" : "_id_",
        "ns" : "jerome.jerome_2.collection"
    },
    {
        "v" : 1,
        "key" : {
            "x" : 1
        },
        "name" : "x_1",
        "ns" : "jerome.jerome_2.collection"
    }
]
> db.jerome_2.collection.find()
{ "_id" : ObjectId("557004f1f2824fa15224e20b"), "x" : 2 }
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
> db.jeroem_2.collection.insert({x:[1,2,3,4,5]}) #²åÈëÒ»ÌõÊý×éÊý¾Ý£¬¶ÔÓÚÕâÌõÊý¾ÝÀ´½²£¬mongodbΪÆä´´½¨ÁËÒ»¸ö¶à¼þË÷Òý
WriteResult({ "nInserted" : 1 })

?

?
?
4. ¸´ºÏË÷Òý

\

> db.jerome_2.collection.ensureIndex({x:1,y:1}) #´´½¨
{
    "createdCollectionAutomatically" : false,
    "numIndexesBefore" : 2,
    "numIndexesAfter" : 3,
    "ok" : 1
}
> db.jerome_2.collection.find({x:1,y:2}) #ʹÓÃ
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
> 

?

?
5. ¹ýÆÚË÷Òý
? ? 1. ¹ýÆÚË÷Òý£ºÊÇÔÚÒ»¶Îʱ¼äºó»á¹ýÆÚµÄË÷Òý¡£
? ? 2. ÔÚË÷Òý¹ýÆÚºó£¬ÏàÓ¦µÄÊý¾Ý»á±»É¾³ý
? ? 3. ÕâÊʺϴ洢һЩÔÚÒ»¶Îʱ¼äÖ®ºó»áʧЧµÄÊý¾Ý£¬±ÈÈçÓû§µÄµÇ½ÐÅÏ¢¡¢´æ´¢µÄÈÕÖ¾µÈ¡£
> db.jerome_2.collection.ensureIndex({time:1},{expireAfterSeconds:30}) #´´½¨¹ýÆÚË÷Òý£¬¹ýÆÚʱ¼ä30Ãë
{
    "createdCollectionAutomatically" : false,
    "numIndexesBefore" : 3,
    "numIndexesAfter" : 4,
    "ok" : 1
}
> db.jerome_2.collection.insert({time:new Date()}) #²åÈëÊý¾Ý²âÊÔ
WriteResult({ "nInserted" : 1 })
> db.jerome_2.collection.find()
{ "_id" : ObjectId("557004f1f2824fa15224e20b"), "x" : 2 }
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
{ "_id" : ObjectId("55700b17f2824fa15224e20e"), "time" : ISODate("2015-06-04T08:23:51.531Z") }
> db.jerome_2.collection.find()
{ "_id" : ObjectId("557004f1f2824fa15224e20b"), "x" : 2 }
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
{ "_id" : ObjectId("55700b17f2824fa15224e20e"), "time" : ISODate("2015-06-04T08:23:51.531Z") }
> db.jerome_2.collection.find() #ʱ¼ä¹ýÁ˾ÍÕÒ²»µ½ÁË
{ "_id" : ObjectId("557004f1f2824fa15224e20b"), "x" : 2 }
{ "_id" : ObjectId("557005a5f2824fa15224e20c"), "x" : 1, "y" : 2, "z" : 3 }
> 

?

ʹÓÃÏÞÖÆ
? ? 1. ´æ´¢ÔÚ¹ýÆÚË÷Òý×ֶεÄÖµ±ØÐëÊÇÖ¸¶¨µÄʱ¼äÀàÐÍ¡££¨±ØÐëÊÇISODate»òÕßISODateÊý×飬²»ÄÜʹÓÃʱ¼ä´Á£¬·ñÔò²»Äܱ»×Ô¶¯É¾³ý£©
? ? 2. Èç¹ûÖ¸¶¨ÁËISODateÊý×飬Ôò°´ÕÕ×îСµÄʱ¼ä½øÐÐɾ³ý¡£
? ? 3. ¹ýÆÚË÷Òý²»ÄÜÊǸ´ºÏË÷Òý¡£
? ? 4. ɾ³ýʱ¼ä²»ÊǾ«È·µÄ