脚本
#!/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);
}
Run Code Online (Sandbox Code Playgroud)
输出:
\ {
student_id 198
}
\ {
student_id 199
}
Run Code Online (Sandbox Code Playgroud)
预期产出:
198
199
Run Code Online (Sandbox Code Playgroud)
Data :: Printer用于人类可读的数据检查.它打印到STDOUT.这是用于调试和查看开发期间的数据结构.
如果您想要实际访问并将数据打印到屏幕上,您需要自己访问它.Data :: Printer可以帮助您完成此操作,因为它可以告诉您数据结构的外观.
要打印你的student_ids(这些键的值),只需打印print它们.
while (my $row = $stu->next){
print "$row->{student_id}\n";
}
Run Code Online (Sandbox Code Playgroud)
而已.考虑使用,say因为它包含\n已经.
say $row->{student_id};
Run Code Online (Sandbox Code Playgroud)
您需要执行use feature 'say';或使用包含它的版本编译指示来执行此操作.