gpt4 book ai didi

php - 在 MongoDB 中使用组

转载 作者:行者123 更新时间:2023-11-29 07:44:10 24 4
gpt4 key购买 nike

我的数据库名称“nutch”中有一个集合“crawl_data”。在crawl_data中,我有一个名为“Domain”的字段。现在我想用PHP统计同一域名下的行数。

MYSQL 的等价物是:

 SELECT DOMAIN, COUNT(*) AS NUMOFURLS FROM Crawl_data GROUP BY DOMAIN

我尝试了代码:

$keys = array("Domain" => 1);
$inital = array("count" => 0);
$reduce = "function (obj, prev) { prev.count++; }";
$cursor = $collection->group($keys,$inital,$reduce);
foreach($cursor as $doc){
echo var_dump($doc);
}

输出是:

  array(3) { [0]=> array(2) { ["Domain"]=> string(13) "Straits Times"      ["count"]=> float(5127) } 

[1]=> array(2) { ["Domain"]=> string(7) "Reuters" ["count"]=> float(3201) }

[2]=> array(2) { ["Domain"]=> string(17) "Channel News Asia" ["count"]=> float(2812) } } float(11140) int(3) float(1)

print_r($curosr) 给出:

 Array ( [retval] => Array ( [0] => Array ( [Domain] => Straits Times   [count] => 5127 ) 
[1] => Array ( [Domain] => Reuters [count] => 3201 )
[2] => Array ( [Domain] => Channel News Asia [count] => 2812 ) ) [count] => 11140 [keys] => 3 [ok] => 1 ) 1

我应该如何输出 $doc 变量以仅回显域名和数数

例如:域名:海峡时报;编号:5127

最佳答案

foreach($cursor['retval'] as  $doc){

$test .= $doc["Domain"] ." ".$doc["count"]."<br>";

}

echo $test;

关于php - 在 MongoDB 中使用组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28277417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com