Perl Newby has asked for the wisdom of the Perl Monks concerning the following question:
I am using dbi:odbc and I am trying to grab 11 rows out of my Data Base. I want these eleven rows to be newer than a certian DATE and TIME. But if there are 20 rows newer than the date and time I state, I want to get the oldest 11 rows, ordered by DATE and TIME. I have done this with ASP by using a TOP statement inside a nested select statement together (ordering the nested select asc and the outside select by desc), but I was unable to get this to work in my perl code. I was wondering if there is a way to grab 11 rows, the way I want to (without ordering them by DATE and TIME asc ), because there could be cases when there will be less than 11 rows returned.
this is an example of how I was able to get the info queried out but I can not use this if there is less than 11 rows returned.use dbi; my $dbh, $sth; my ($sport, $import) = @_; my ($path) = "d:/text/time/" . $sport . ".txt"; open (text, "$path") or die "couldn't open!\n"; my (@text) = <text>; my $d = $text; my $t = $text; my $a = $text; $dbh = DBI->connect("dbi:ODBC:burlee","spacecitysports","houston34") + or die die "Can't open connection\n"; $sth = $dbh->prepare("select * from DATA_DB_ENTRY__ASTROS_STAGING where TS_DATE >= '" . $d . "' and IMPORTACE = '" . $import . "' order by TS_DATE asc, TS_TIME asc "); $sth->execute();