0
我有一個表在MySQL數據庫與領域選擇查詢的問題
「名」,「標題」,「cd_id」,「跟蹤」
的條目是這樣的:
Schubert | Symphonie Nr 7 | 27 | 2 Brahms | Symphonie Nr 1 | 11 | 4 Brahms | Symphonie Nr 2 | 27 | 4 Shostakovich | Jazz Suite Nr 1 | 19 | 3
,讓每CD(cd_id)我寫這個劇本的軌道:
#!/usr/bin/env perl
use warnings; use strict;
use DBI;
my $dbh = DBI->connect(
"DBI:mysql:database=my_db;",
'user', 'passwd', { RaiseError => 1 });
my $select_query = "SELECT cd_id, tracks FROM my_table";
my $sth = $dbh->prepare($select_query);
$sth->execute;
my %hash;
while (my $row = $sth->fetchrow_hashref) {
$hash{"$row->{cd_id}"} += $row->{tracks};
}
print "$_ : $hash{$_}\n" for sort { $a <=> $b } keys %hash;
是否有可能直接與獲得這些結果ñ適當的選擇查詢?
計數將獲得的行數爲每cd_id,而不是軌道列的總和。 – 2010-02-05 13:31:53
你不能使用SUM(*),你需要提供你想要總結的列。 – 2010-02-05 13:39:31
嗯,你是對的 – knittl 2010-02-05 14:00:25