2011-03-23 54 views
0

如何在perl中轉換以下命令?在Perl中運行MongoDB

dn.runCommand({group : { 
    "ns"  : "stocks", 
    "key"  : "date", 
    "initial" : {"time" : 0}, 
    "$reduce" : function(doc, prev) { 
     if (doc.time > prev.time) { 
      prev.time = doc.time; 
      prev.price = doc.price; 
      } 
     }, 
    "condition" : {"day" : { "$gt" : "2020/09/30 }} 
    }} 
) 

問候。

+0

我從來沒有使用MongoDB,所以我沒有任何具體的幫助,但我建議使用[MongoDB模塊](http://search.cpan.org/dist/MongoDB/)來自CPAN將是一個好的開始。 – 2011-03-23 12:15:35

+0

我是一個新手,所以我從不考慮編寫自己的mongodb驅動程序。如果您對cpan mongodb有一點經驗,您必須知道mongo控制檯中的命令與cpan mongodb不同。 – Weiyan 2011-03-23 13:07:28

回答

0

我還沒有測試下面的代碼,但它可能有效。

use MongoDB; 
my $db = MongoDB::Connection->new->test; 
$db->run_command({ 
group => { 
    "ns"  => "stocks", 
    "key"  => "date", 
    "initial" => {"time" => 0}, 
    '$reduce' => 'function(doc, prev) { 
     if (doc.time > prev.time) { 
      prev.time = doc.time; 
      prev.price = doc.price; 
     } 
    }', 
    "condition" => {"day" => { '$gt' => "2020/09/30" }} 
}} 
);