当我在我的脚本中尝试它时,我收到此错误消息:
使用聚合函数时指定disTINCT是不合理的 – 忽略.在/usr/lib/perl5/site_perl/5.10.0/sql/Parser.pm第496行.
#!/usr/bin/perl use warnings; use strict; use DBI; my $dbh = DBI->connect( "DBI:CSV:",undef,{ raiseerror => 1,AutoCommit => 1 } ); my $table = 'artikel'; my $array_ref = [ [ 'a_nr','a_name','a_preis' ],[ 12,'Oberhemd',39.80,],[ 22,'Mantel',360.00,[ 11,44.20,[ 13,'Hose',119.50,]; $dbh->do( "CREATE TEMP TABLE $table AS IMPORT(?)",{},$array_ref ); my $sth = $dbh->prepare( "SELECT disTINCT a_name FROM $table" ); $sth->execute(); $sth->dump_results(); $dbh->disconnect();
SELECT disTINCT不能与DBD :: CSV一起使用或者我的脚本有问题吗?
编辑:
输出是
‘Oberhemd’
“曼特尔”
‘Oberhemd’
‘软管’
4行
我认为应该是
‘Oberhemd’
“曼特尔”
‘软管’
3排
已安装的版本:
Perl:5.010000(x86_64-linux-thread-multi)
操作系统:linux(2.6.31)
DBI:1.609
DBD ::海绵:12.010002
DBD :: sqlite:1.25
DBD ::代理:0.2004
DBD :: Gofer:0.011565
DBD ::文件:0.37
DBD :: ExampleP:12.010007
DBD :: DBM:0.03
DBD :: CSV:0.26
解决方法
如果我做一个awk,排序-u为唯一(行的值)我得到36个值,这是我所期望的.
-Kanwar
perl -V
我的perl5(修订版5版本10颠覆0)配置摘要:
平台:
osname = linux,osvers = 2.2.24-6.2.3,archname = i686-linux-thread-multi
DBD :: CSV 0.26
sql :: Parser 1.23
DBI 1.609
例:
使用聚合函数时指定disTINCT是不合理的 – 忽略.在/opt/perl2exe/perl5/lib/site_perl/5.10.0/sql/Parser.pm第496行.
87060
87060
87060
87060
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。