Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
MongoDB ¾ÛºÏ¹ÜµÀ£¨Aggregation Pipeline£©
 
×÷ÕߣºÕÅÉÆÓÑ À´Ô´£º²©¿ÍÔ° ·¢²¼ÓÚ£º2015-03-20
  2689  次浏览      27
 

¹ÜµÀ¸ÅÄî

POSIX¶àÏ̵߳ÄʹÓ÷½Ê½ÖУ¬ ÓÐÒ»ÖÖºÜÖØÒªµÄ·½Ê½-----Á÷Ë®Ïߣ¨Òà³ÆÎª¡°¹ÜµÀ¡±£©·½Ê½£¬¡°Êý¾ÝÔªËØ¡±Á÷´®Ðеر»Ò»×éḬ̈߳´Ë³ÐòÖ´ÐС£ËüµÄʹÓüܹ¹¿É²Î¿¼ÏÂͼ£º

ÒÔÃæÏò¶ÔÏóµÄ˼ÏëÈ¥Àí½â£¬Õû¸öÁ÷Ë®Ïߣ¬¿ÉÒÔÀí½âΪһ¸öÊý¾Ý´«ÊäµÄ¹ÜµÀ£»¸Ã¹ÜµÀÖеÄÿһ¸ö¹¤×÷Ị̈߳¬¿ÉÒÔÀí½âΪһ¸öÕû¸öÁ÷Ë®ÏßµÄÒ»¸ö¹¤×÷½×¶Îstage,ÕâЩ¹¤×÷Ïß³ÌÖ®¼äµÄºÏ×÷ÊÇÒ»»·¿ÛÒ»»·µÄ¡£¿¿ÊäÈë¿ÚÔ½½üµÄ¹¤×÷Ị̈߳¬ÊÇʱÐò½ÏÔçµÄ¹¤×÷½×¶Îstage,ËüµÄ¹¤×÷³É¹û»áÓ°ÏìÏÂÒ»¸ö¹¤×÷Ï߳̽׶Σ¨stage£©µÄ¹¤×÷½á¹û,¼´Ï¸ö½×¶ÎÒÀÀµÓÚÉÏÒ»¸ö½×¶ÎµÄÊä³ö£¬ÉÏÒ»¸ö½×¶ÎµÄÊä³ö³ÉΪ±¾½×¶ÎµÄÊäÈë¡£ÕâÒ²ÊÇpipelineµÄÒ»¸ö¹²ÓÐÌØµã£¡

ΪÁË»ØÓ¦Óû§¶Ô¼òµ¥Êý¾Ý·ÃÎʵÄÐèÇó,MongoDB2.2°æ±¾ÒýÈëÐµĹ¦ÄܾۺϿò¼Ü£¨Aggregation Framework£© £¬ËüÊÇÊý¾Ý¾ÛºÏµÄÒ»¸öпò¼Ü£¬Æä¸ÅÄîÀàËÆÓÚÊý¾Ý´¦ÀíµÄ¹ÜµÀ¡£ ÿ¸öÎĵµÍ¨¹ýÒ»¸öÓɶà¸ö½Úµã×é³ÉµÄ¹ÜµÀ£¬Ã¿¸ö½ÚµãÓÐ×Ô¼ºÌØÊâµÄ¹¦ÄÜ£¨·Ö×é¡¢¹ýÂ˵ȣ©£¬Îĵµ¾­¹ý¹ÜµÀ´¦Àíºó£¬×îºóÊä³öÏàÓ¦µÄ½á¹û¡£¹ÜµÀ»ù±¾µÄ¹¦ÄÜÓÐÁ½¸ö£º

Ò»ÊǶÔÎĵµ½øÐС°¹ýÂË¡±£¬Ò²¾ÍÊÇɸѡ³ö·ûºÏÌõ¼þµÄÎĵµ;

¶þÊǶÔÎĵµ½øÐС°±ä»»¡±£¬Ò²¾ÍÊǸıäÎĵµµÄÊä³öÐÎʽ¡£

ÆäËûµÄһЩ¹¦ÄÜ»¹°üÀ¨°´ÕÕij¸öÖ¸¶¨µÄ×ֶηÖ×éºÍÅÅÐòµÈ¡£¶øÇÒÔÚÿ¸ö½×¶Î»¹¿ÉÒÔʹÓñí´ïʽ²Ù×÷·û¼ÆËãÆ½¾ùÖµºÍÆ´½Ó×Ö·û´®µÈÏà¹Ø²Ù×÷¡£¹ÜµÀÌṩÁËÒ»¸öMapReduce µÄÌæ´ú·½°¸£¬MapReduceʹÓÃÏà¶ÔÀ´Ëµ±È½Ï¸´ÔÓ£¬¶ø¹ÜµÀµÄÓµÓй̶¨µÄ½Ó¿Ú(²Ù×÷·û±í´ï),ʹÓñȽϼòµ¥£¬¶ÔÓÚ´ó¶àÊýµÄ¾ÛºÏÈÎÎñ¹ÜµÀÒ»°ãÀ´ËµÊÇÊ×Ñ¡·½·¨¡£

¸Ã¿ò¼ÜʹÓÃÉùÃ÷ÐԹܵÀ·ûºÅÀ´Ö§³ÖÀàËÆÓÚSQL Group By²Ù×÷µÄ¹¦ÄÜ£¬¶ø²»ÔÙÐèÒªÓû§±àд×Ô¶¨ÒåµÄJavaScriptÀý³Ì¡£

´ó²¿·Ö¹ÜµÀ²Ù×÷»áÔÚ¡°aggregate¡±×Ó¾äºó»á¸úÉÏ¡°$match¡±´òÍ·¡£ËüÃÇÓÃÔÚÒ»Æð£¬¾ÍÀàËÆÓÚSQLµÄfromºÍwhere×Ӿ䣬»òÊÇMongoDBµÄfindº¯Êý¡£¡°$project¡±×Ӿ俴ÆðÀ´Ò²·Ç³£ÀàËÆSQL»òMongoDBÖеÄij¸ö¸ÅÄºÍSQL²»Í¬µÄÊÇ£¬ËüλÓÚ±í´ïʽβ¶Ë£©¡£

½ÓÏÂÀ´½éÉܵIJÙ×÷ÔÚMongoDB¾ÛºÏ¿ò¼ÜÖÐÊǶÀÒ»ÎÞ¶þµÄ¡£Óë´ó¶àÊý¹ØÏµÊý¾Ý¿â²»Í¬£¬MongoDBÌìÉú¾Í¿ÉÒÔÔÚÐÐ/ÎĵµÄÚ´æ´¢Êý×é¡£¾¡¹Ü¸ÃÌØÐÔ¶ÔÓÚÈ«ÓÐÈ«ÎÞµÄÊý¾Ý·ÃÎÊÊ®·Ö±ãÀû£¬µ«ÊÇËü¶ÔÓÚÐèÒª×éºÏͶӰ¡¢·Ö×éºÍ¹ýÂ˲Ù×÷À´±àд±¨¸æµÄ¹¤×÷£¬È´ÏÔµÃÏ൱¸´ÔÓ¡£¡°$unwind¡±×Ӿ佫Êý×é·Ö½âΪµ¥¸öµÄÔªËØ£¬²¢ÓëÎĵµµÄÆäÓಿ·Öһͬ·µ»Ø¡£

¡°$group¡±²Ù×÷ÓëSQLµÄGroup By×Ó¾äÓÃ;Ïàͬ£¬µ«ÊÇʹÓÃÆðÀ´È´¸üÏñÊÇLINQÖеķÖ×éÔËËã·û¡£ÓëÈ¡»ØÒ»ÐÐÆ½ÃæÊý¾Ý²»Í¬£¬¡°$group¡±²Ù×÷µÄ½á¹û¼¯»á³ÊÏÖΪһ¸ö³ÖÐøµÄǶÌ׽ṹ¡£ÕýÒòÈç´Ë£¬Ê¹Óá°$group¡±¿ÉÒÔ·µ»Ø¾ÛºÏÐÅÏ¢£¬ÀýÈç¶ÔÓÚÿ¸ö·Ö×éÖеÄʵ¼ÊÎĵµ£¬¼ÆËãÎĵµÕûÌå»ò²¿·ÖµÄÊýÄ¿ºÍƽ¾ùÖµ¡£

¹ÜµÀ²Ù×÷·û

¹ÜµÀÊÇÓÉÒ»¸ö¸ö¹¦Äܽڵã×é³ÉµÄ£¬ÕâЩ½ÚµãÓùܵÀ²Ù×÷·ûÀ´½øÐбíʾ¡£¾ÛºÏ¹ÜµÀÒÔÒ»¸ö¼¯ºÏÖеÄËùÓÐÎĵµ×÷Ϊ¿ªÊ¼£¬È»ºóÕâЩÎĵµ´ÓÒ»¸ö²Ù×÷½Úµã Á÷ÏòÏÂÒ»¸ö½Úµã £¬Ã¿¸ö²Ù×÷½Úµã¶ÔÎĵµ×öÏàÓ¦µÄ²Ù×÷¡£ÕâЩ²Ù×÷¿ÉÄܻᴴ½¨ÐµÄÎĵµ»òÕß¹ýÂ˵ôһЩ²»·ûºÏÌõ¼þµÄÎĵµ£¬ÔڹܵÀÖпÉÒÔ¶ÔÎĵµ½øÐÐÖØ¸´²Ù×÷¡£

ÏÈ¿´Ò»¸ö¹ÜµÀ¾ÛºÏµÄÀý×Ó£º

¹ÜµÀ²Ù×÷·ûµÄÖÖÀࣺ

¹ÜµÀ²Ù×÷·ûÏêϸʹÓÃ˵Ã÷

1. $project: Êý¾ÝͶӰ£¬Ö÷ÒªÓÃÓÚÖØÃüÃû¡¢Ôö¼ÓºÍɾ³ý×Ö¶Î

ÀýÈ磺

db.article.aggregate(

{ $project : {

title : 1 ,

author : 1 ,

}}

);

ÕâÑùµÄ»°½á¹ûÖоÍÖ»»¹ÓÐ_id,tilteºÍauthorÈý¸ö×Ö¶ÎÁË£¬Ä¬ÈÏÇé¿öÏÂ_id×Ö¶ÎÊDZ»°üº¬µÄ£¬Èç¹ûÒªÏë²»°üº¬_id»°¿ÉÒÔÕâÑù:

db.article.aggregate(

{ $project : {

_id : 0 ,

title : 1 ,

author : 1

}});

Ò²¿ÉÒÔÔÚ$projectÄÚʹÓÃËãÊõÀàÐͱí´ïʽ²Ù×÷·û£¬ÀýÈ磺

db.article.aggregate(

{ $project : {

title : 1,

doctoredPageViews : { $add:["$pageViews", 10] }

}});

ͨ¹ýʹÓÃ$add¸øpageViews×ֶεÄÖµ¼Ó10£¬È»ºó½«½á¹û¸³Öµ¸øÒ»¸öеÄ×Ö¶Î:doctoredPageViews

×¢:±ØÐ뽫$add¼ÆËã±í´ïʽ·Åµ½ÖÐÀ¨ºÅÀïÃæ

³ý´ËÖ®ÍâʹÓÃ$project»¹¿ÉÒÔÖØÃüÃû×Ö¶ÎÃûºÍ×ÓÎĵµµÄ×Ö¶ÎÃû:

db.article.aggregate(

{ $project : {

title : 1 ,

page_views : "$pageViews" ,

bar : "$other.foo"

}});

Ò²¿ÉÒÔÌí¼Ó×ÓÎĵµ£º

db.article.aggregate(

{ $project : {

title : 1 ,

stats : {

pv : "$pageViews",

foo : "$other.foo",

dpv : { $add:["$pageViews", 10] }

}

}});

²úÉúÁËÒ»¸ö×ÓÎĵµstats,ÀïÃæ°üº¬pv,foo,dpvÈý¸ö×ֶΡ£

2.$match: Â˲¨²Ù×÷£¬É¸Ñ¡·ûºÏÌõ¼þÎĵµ£¬×÷ΪÏÂÒ»½×¶ÎµÄÊäÈë

$matchµÄÓï·¨ºÍ²éѯ±í´ïʽ(db.collection.find())µÄÓï·¨Ïàͬ

db.articles.aggregate( [

{ $match : { score : { $gt : 70, $lte : 90 } } },

{ $group: { _id: null, count: { $sum: 1 } } }

] );

$matchÓÃÓÚ»ñÈ¡·ÖÊý´óÓÚ70СÓÚ»òµÈÓÚ90¼Ç¼£¬È»ºó½«·ûºÏÌõ¼þµÄ¼Ç¼Ë͵½ÏÂÒ»½×¶Î$group¹ÜµÀ²Ù×÷·û½øÐд¦Àí¡£

×¢Ò⣺1.²»ÄÜÔÚ$match²Ù×÷·ûÖÐʹÓÃ$where±í´ïʽ²Ù×÷·û¡£

2.$match¾¡Á¿³öÏÖÔڹܵÀµÄÇ°Ãæ£¬ÕâÑù¿ÉÒÔÌáÔç¹ýÂËÎĵµ£¬¼Ó¿ì¾ÛºÏËÙ¶È¡£

3.Èç¹û$match³öÏÖÔÚ×îÇ°ÃæµÄ»°£¬¿ÉÒÔʹÓÃË÷ÒýÀ´¼Ó¿ì²éѯ¡£

3. $limit: ÏÞÖÆ¾­¹ý¹ÜµÀµÄÎĵµÊýÁ¿

$limitµÄ²ÎÊýÖ»ÄÜÊÇÒ»¸öÕýÕûÊý

db.article.aggregate(

{ $limit : 5 });

ÕâÑùµÄ»°¾­¹ý$limit¹ÜµÀ²Ù×÷·û´¦Àíºó£¬¹ÜµÀÄÚ¾ÍֻʣÏÂǰ5¸öÎĵµÁË

4. $skip: ´Ó´ý²Ù×÷¼¯ºÏ¿ªÊ¼µÄλÖÃÌø¹ýÎĵµµÄÊýÄ¿

$skip²ÎÊýÒ²Ö»ÄÜΪһ¸öÕýÕûÊý

db.article.aggregate(

{ $skip : 5 });

¾­¹ý$skip¹ÜµÀ²Ù×÷·û´¦Àíºó£¬Ç°Îå¸öÎĵµ±»¡°¹ýÂË¡±µô

5.$unwind£º½«Êý×éÔªËØ²ð·ÖΪ¶ÀÁ¢×Ö¶Î

ÀýÈç:articleÎĵµÖÐÓÐÒ»¸öÃû×ÖΪtagsÊý×é×ֶΣº

> db.article.find() 
  { "_id" : ObjectId("528751b0e7f3eea3d1412ce2"),

"author" : "Jone", "title" : "Abook", 

"tags" : [  "good",  "fun",  "good" ] }

ʹÓÃ$unwind²Ù×÷·ûºó£º

> db.article.aggregate({$project:{author:1,title:1,tags:1}},{$unwind:"$tags"}) 
{ 
        "result" : [ 
                { 
                        "_id" : ObjectId("528751b0e7f3eea3d1412ce2"), 
                        "author" : "Jone", 
                        "title" : "A book", 
"tags" : "good" 
                }, 
                { 
                        "_id" : ObjectId("528751b0e7f3eea3d1412ce2"), 
                        "author" : "Jone", 
                        "title" : "A book", 
"tags" : "fun" 
                }, 
                { 
                        "_id" : ObjectId("528751b0e7f3eea3d1412ce2"), 
                        "author" : "Jone", 
                        "title" : "A book", 
  "tags" : "good" 
                } 
        ], 
        "ok" : 1 
}

×¢Ò⣺a.{$unwind:"$tags"})²»ÒªÍüÁË$·ûºÅ

b.Èç¹û$unwindÄ¿±ê×ֶβ»´æÔڵϰ£¬ÄÇô¸ÃÎĵµ½«±»ºöÂÔ¹ýÂ˵ô£¬ÀýÈ磺

 > db.article.aggregate({$project:{author:1,title:1,tags:1}},{$unwind:"$tag"}) 
{ "result" : [ ], "ok" : 1 }

½«$tags¸ÄΪ$tagÒò²»´æÔÚ¸Ã×ֶΣ¬¸ÃÎĵµ±»ºöÂÔ£¬Êä³öµÄ½á¹ûΪ¿Õ

c.Èç¹û$unwindÄ¿±ê×ֶβ»ÊÇÒ»¸öÊý×éµÄ»°£¬½«»á²úÉú´íÎó£¬ÀýÈ磺

> db.article.aggregate({$project:{author:1,title:1,tags:1}},{$unwind:"$title"})

    Error: Printing Stack Trace 
    at printStackTrace (src/mongo/shell/utils.js:37:15) 
    at DBCollection.aggregate (src/mongo/shell/collection.js:897:9) 
    at (shell):1:12 
    Sat Nov 16 19:16:54.488 JavaScript execution failed: aggregate failed: { 
        "errmsg" : "exception: $unwind:  value at end of field path must be an array", 
        "code" : 15978, 
        "ok" : 0 
} at src/mongo/shell/collection.js:L898

d.Èç¹û$unwindÄ¿±ê×Ö¶ÎÊý×éΪ¿ÕµÄ»°£¬¸ÃÎĵµÒ²½«»á±»ºöÂÔ¡£

6.$group ¶ÔÊý¾Ý½øÐзÖ×é

$groupµÄʱºò±ØÐëÒªÖ¸¶¨Ò»¸ö_idÓò£¬Í¬Ê±Ò²¿ÉÒÔ°üº¬Ò»Ð©ËãÊõÀàÐ͵ıí´ïʽ²Ù×÷·û£º

db.article.aggregate(

{ $group : {

_id : "$author",

docsPerAuthor : { $sum : 1 },

viewsPerAuthor : { $sum : "$pageViews" }

}});

×¢Ò⣺ 1.$groupµÄÊä³öÊÇÎÞÐòµÄ¡£

2.$group²Ù×÷ĿǰÊÇÔÚÄÚ´æÖнøÐеģ¬ËùÒÔ²»ÄÜÓÃËüÀ´¶Ô´óÁ¿¸öÊýµÄÎĵµ½øÐзÖ×é¡£

7.$sort : ¶ÔÎĵµ°´ÕÕÖ¸¶¨×Ö¶ÎÅÅÐò

ʹÓ÷½Ê½ÈçÏ£º

db.users.aggregate( { $sort : { age : -1, posts: 1 } }); 

°´ÕÕÄêÁä½øÐнµÐò²Ù×÷£¬°´ÕÕposts½øÐÐÉýÐò²Ù×÷

×¢Ò⣺1.Èç¹û½«$sort·Åµ½¹ÜµÀÇ°ÃæµÄ»°¿ÉÒÔÀûÓÃË÷Òý£¬Ìá¸ßЧÂÊ

2.MongoDB 24.¶ÔÄÚ´æ×öÁËÓÅ»¯£¬ÔڹܵÀÖÐÈç¹û$sort³öÏÖÔÚ$limit֮ǰµÄ»°£¬$sortÖ»»á¶Ôǰ$limit¸öÎĵµ½øÐвÙ×÷£¬ÕâÑùÔÚÄÚ´æÖÐÒ²Ö»»á±£Áôǰ$limit¸öÎĵµ£¬´Ó¶ø¿ÉÒÔ¼«´óµÄ½ÚÊ¡ÄÚ´æ

3.$sort²Ù×÷ÊÇÔÚÄÚ´æÖнøÐеģ¬Èç¹ûÆäÕ¼ÓеÄÄڴ泬¹ýÎïÀíÄÚ´æµÄ10%£¬³ÌÐò»á²úÉú´íÎó

8.$goNear

$goNear»á·µ»ØÒ»Ð©×ø±êÖµ£¬ÕâЩֵÒÔ°´ÕÕ¾àÀëÖ¸¶¨µã¾àÀëÓɽüµ½Ô¶½øÐÐÅÅÐò

¾ßÌåʹÓòÎÊý¼ûϱí:

ÀýÈ磺

db.places.aggregate([

{

$geoNear: {

near: [40.724, -73.997],

distanceField: "dist.calculated",

maxDistance: 0.008,

query: { type: "public" },

includeLocs: "dist.location",

uniqueDocs: true,

num: 5

}

}

])

Æä½á¹ûΪ£º

{

"result" : [

{ "_id" : 7,

"name" : "Washington Square",

"type" : "public",

"location" : [

[ 40.731, -73.999 ],

[ 40.732, -73.998 ],

[ 40.730, -73.995 ],

[ 40.729, -73.996 ]

],

"dist" : {

"calculated" : 0.0050990195135962296,

"location" : [ 40.729, -73.996 ]

}

},

{ "_id" : 8,

"name" : "Sara D. Roosevelt Park",

"type" : "public",

"location" : [

[ 40.723, -73.991 ],

[ 40.723, -73.990 ],

[ 40.715, -73.994 ],

[ 40.715, -73.994 ]

],

"dist" : {

"calculated" : 0.006082762530298062,

"location" : [ 40.723, -73.991 ]

}

}

],

"ok" : 1}

ÆäÖУ¬dist.calculatedÖаüº¬Á˼ÆËãµÄ½á¹û£¬¶ødist.locationÖаüº¬Á˼ÆËã¾àÀëʱʵ¼ÊÓõ½µÄ×ø±ê

×¢Ò⣺ 1.ʹÓÃ$goNearÖ»ÄÜÔڹܵÀ´¦ÀíµÄ¿ªÊ¼µÚÒ»¸ö½×¶Î½øÐÐ

2.±ØÐëÖ¸¶¨distanceField£¬¸Ã×Ö¶ÎÓÃÀ´¾ö¶¨ÊÇ·ñ°üº¬¾àÀë×Ö¶Î

3.$gonNearºÍgeoNearÃüÁî±È½ÏÏàËÆ£¬µ«ÊÇÒ²ÓÐһЩ²»Í¬:distanceFieldÔÚ$geoNearÖÐÊDZØÑ¡µÄ£¬¶øÔÚgeoNearÖÐÊÇ¿ÉÑ¡µÄ£»includeLocsÔÚ$geoNearÖÐÊÇstringÀàÐÍ£¬¶øÔÚgeoNearÖÐÊÇboolenÀàÐÍ¡£

¹ÜµÀ±í´ïʽ

¹ÜµÀ²Ù×÷·û×÷Ϊ¡°¼ü¡±,Ëù¶ÔÓ¦µÄ¡°Öµ¡±½Ð×ö¹ÜµÀ±í´ïʽ¡£ÀýÈçÉÏÃæÀý×ÓÖÐ{$match:{status:"A"}}£¬$match³ÆÎª¹ÜµÀ²Ù×÷·û£¬¶ø{status:"A"}³ÆÎª¹ÜµÀ±í´ïʽ£¬Ëü¿ÉÒÔ¿´×÷ÊǹܵÀ²Ù×÷·ûµÄ²Ù×÷Êý(Operand)£¬Ã¿¸ö¹ÜµÀ±í´ïʽÊÇÒ»¸öÎĵµ½á¹¹£¬ËüÊÇÓÉ×Ö¶ÎÃû¡¢×Ö¶ÎÖµ¡¢ºÍһЩ±í´ïʽ²Ù×÷·û×é³ÉµÄ£¬ÀýÈçÉÏÃæÀý×ÓÖйܵÀ±í´ïʽ¾Í°üº¬ÁËÒ»¸ö±í´ïʽ²Ù×÷·û$sum½øÐÐÀÛ¼ÓÇóºÍ¡£

ÿ¸ö¹ÜµÀ±í´ïʽֻÄÜ×÷ÓÃÓÚ´¦Àíµ±Ç°ÕýÔÚ´¦ÀíµÄÎĵµ£¬¶ø²»ÄܽøÐпçÎĵµµÄ²Ù×÷¡£¹ÜµÀ±í´ïʽ¶ÔÎĵµµÄ´¦Àí¶¼ÊÇÔÚÄÚ´æÖнøÐеġ£³ýÁËÄܹ»½øÐÐÀÛ¼Ó¼ÆËãµÄ¹ÜµÀ±í´ïʽÍ⣬ÆäËûµÄ±í´ïʽ¶¼ÊÇÎÞ״̬µÄ£¬Ò²¾ÍÊDz»»á±£ÁôÉÏÏÂÎĵÄÐÅÏ¢¡£ÀÛ¼ÓÐÔÖʵıí´ïʽ²Ù×÷·ûͨ³£ºÍ$group²Ù×÷·ûÒ»ÆðʹÓã¬À´Í³¼Æ¸Ã×éÄÚ×î´óÖµ¡¢×îСֵµÈ£¬ÀýÈçÉÏÃæµÄÀý×ÓÖÐÎÒÃÇÔÚ$group¹ÜµÀ²Ù×÷·ûÖÐʹÓÃÁ˾ßÓÐÀÛ¼ÓµÄ$sumÀ´¼ÆËã×ܺ͡£

³ýÁË$sumÒÔΪ£¬»¹ÓÐÒÔÏÂÐÔÖʵıí´ïʽ²Ù×÷·û£º

×é¾ÛºÏ²Ù×÷·û

BoolÀàÐ;ۺϲÙ×÷·û

±È½ÏÀàÐ;ۺϲÙ×÷·û

ËãÊõÀàÐ;ۺϲÙ×÷·û

×Ö·û´®ÀàÐ;ۺϲÙ×÷·û

ÈÕÆÚÀàÐ;ۺϲÙ×÷·û

Ìõ¼þÀàÐ;ۺϲÙ×÷·û

×¢£ºÒÔÉϲÙ×÷·û¶¼±ØÐëÔڹܵÀ²Ù×÷·ûµÄ±í´ïʽÄÚÀ´Ê¹Óá£

   
2689 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

MySQLË÷Òý±³ºóµÄÊý¾Ý½á¹¹
MySQLÐÔÄܵ÷ÓÅÓë¼Ü¹¹Éè¼Æ
SQL ServerÊý¾Ý¿â±¸·ÝÓë»Ö¸´
ÈÃÊý¾Ý¿â·ÉÆðÀ´ 10´óDB2ÓÅ»¯
oracleµÄÁÙʱ±í¿Õ¼äдÂú´ÅÅÌ
Êý¾Ý¿âµÄ¿çƽ̨Éè¼Æ


²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿â
¸ß¼¶Êý¾Ý¿â¼Ü¹¹Éè¼ÆÊ¦
HadoopÔ­ÀíÓëʵ¼ù
Oracle Êý¾Ý²Ö¿â
Êý¾Ý²Ö¿âºÍÊý¾ÝÍÚ¾ò
OracleÊý¾Ý¿â¿ª·¢Óë¹ÜÀí


GE Çø¿éÁ´¼¼ÊõÓëʵÏÖÅàѵ
º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Nodejs¸ß¼¶Ó¦Óÿª·¢
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜÁ¦
ijÐÅÏ¢¼¼Êõ¹«Ë¾ PythonÅàѵ
ij²©²ÊITϵͳ³§ÉÌ Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
ÖйúÓÊ´¢ÒøÐÐ ²âÊÔ³ÉÊì¶ÈÄ£Ðͼ¯³É(TMMI)
ÖÐÎïÔº ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí