========================================================================== Using DBI Perl Programming I get a database o/p as below Student SubjectCode Marks ------------------------------------------------ A 1 90 A 2 89 B 1 70 B 2 71 B 3 71 C 2 73 C 3 97 ------------------------------------------------- Subject code may vary to any value. I need a report o/p in the following format and displayed in HTML Student 1 2 3 4 ------------------------------------------------ A 90 89 B 70 71 71 C 73 97 ------------------------------------------------- ================================================================ The following code works out well for this $sth->bind_columns (\$Student, \$subjectCode, \$marks); # chuck all the data into an array my @ora_data; my $index=0; my $count=1; while ($sth->fetch) #fetching the first row { #If its the first record assign the student id to the first row if ($count == 1) { $ora_data[$index]{'STUDENT'} = $student; $count++; } #Compare the student id of the array with the row fetched from the database #if its not equal then create the next row in the array and assign the student to the row if ( $ora_data[$index]{'STUDENT'} ne $student) { $index++; $ora_data[$index]{'STUDENT'} = $student; } #If the studentid in the array is equal to the row fetched from the database i.e sth->fetch #Compare the subject code and assign the appropriate value of marks to the studentid. if ($ora_data[$index]{'STUDENT'} eq $student) { if ($subjectCode == 1) { $ora_data[$index]{'MARK1'} = $marks; } elsif ($subjectCode == 2) { $ora_data[$index]{'MARK2'} = $marks; } elsif ($subjectCode == 3) { $ora_data[$index]{'MARK3'} = $marks; } elsif ($subjectCode == 512) { $ora_data[$index]{'MARK4'} = $marks; } } } # close statement handler and pass the results back. $sth->finish; return @ora_data; ============================================================= Is there any other way in which this could be coded efficiently. Regards Rohit -----------------------------------------------------------------
________________________________________________________________________ Yahoo! India Matrimony: Find your partner online. http://yahoo.shaadi.com/india-matrimony/ -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>