脚本
#!/usr/bin/perl -w
use MongoDB;
use Data::Printer;
my $client = MongoDB::MongoClient->new();
my $db = $client->get_database('students');
my $grades = $db->get_collection('grades');
my $stu = $grades->find->fields({student_id=>1,_id=>0});
while (my $row = $stu->next){
p($row);
}
输出:
\ {
student_id 198
}
\ {
student_id 199
}
预期输出:
198
199
答案 0 :(得分:5)
Data::Printer用于人类可读的数据检查。它打印到STDOUT
。这是用于在开发期间调试和查看数据结构的。
如果您想要实际访问并将数据打印到屏幕上,您需要自己访问它。 Data :: Printer可以帮助您完成此操作,因为它可以告诉您数据结构的样子。
要打印student_id
s(这些键的值),只需print
个。
while (my $row = $stu->next){
print "$row->{student_id}\n";
}
那就是它。请考虑使用say
,因为它已包含\n
。
say $row->{student_id};
您需要执行包含它的use feature 'say';
或use a version pragma才能执行此操作。