At 12:43 AM +0000 10/31/01, Mark Worsdall wrote:
>I want to alter this statement so it returns the number of records.
>$prep = "SELECT COUNT(*) FROM go.objectives WHERE subjects_id='1'
>AND subjectHeadings_id='2' ORDER BY displayOrder";
>$sth = $dbh->prepare($prep);
>So what I need to do is add the COUNT statement into the above and
>then return the number of records but how?
That makes no sense to me. The statement already includes COUNT(*) and
thus returns the number of rows that match the conditions in the WHERE
clause. (By the way, the ORDER BY is completely superfluous, because
the query returns only one row anyway.)
However, in the code shown above, all you've done is execute the query.
You haven't fetched the result. This should do it:
$count = $sth->fetchrow_array();
You could do this in a single step:
$count = $dbh->selectrow_array (
"SELECT COUNT(*) FROM go.objectives WHERE subjects_id='1' AND
subjectHeadings_id='2' ORDER BY displayOrder");
>MySQL table query
>Work:- postmasterAThinwick.demon.co.uk WEB:- http://www.hinwick.demon.co.uk
>Work:- mworsdallATshaftesburysoc.org.uk REPLACE AT with @
>Home:- hinwickATworsdall.demon.co.uk WEB:- http://www.worsdall.demon.co.uk
>Shadow:- webmasterATshadow.org.uk WEB:- http://www.shadow.org.uk