On Sat, 15 Mar 2003, Jeremy Cowgar wrote:

> set classes [ns_db select $dbh "SELECT * FROM classes"]
> while {[ns_db getrow $dbh $classes]} {
>   ns_puts "<tr><td>Class: .......</td></tr>"
>   set students [ns_db select $dbh \
>         "SELECT * FROM students WHERE cid='[ns_set value $classes id]'"]
>   while {[ns_db getrow $dbh $students]{ {
>     ns_puts "<tr><td>Student...</td></tr>"
>   }
> }

Don't do this.  Use a join:

set students [ns_db select $dbh \
        "select c.*, s.* from classes c, students s where s.cid = c.id"]
set lastclass ""
while {[ns_db getrow $dbh $students]} {
        if {![string match $lastclass [ns_set get $students cid]]} {
                ns_puts "<tr><td>Class:...</td></tr>"
                set lastclass [ns_set get $students cid]
        }
        ns_puts "<tr><td>Student...</td></tr>"
}


--
AOLserver - http://www.aolserver.com/
To Remove yourself from this list: http://www.aolserver.com/listserv.html
List information and options: http://listserv.aol.com/

Reply via email to