Re: Fastest way to get table records' number
| From: | Andrew Ballard | Date: | Wed, 19 Mar 2008 14:57:11 +0000 |
| Subject: | Re: Fastest way to get table records' number | ||
| References: | 1 2 3 4 5 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-271793@lists.php.net to get a copy of this message | ||
On Wed, Mar 19, 2008 at 10:53 AM, tedd <tedd.sperling@gmail.com> wrote:
>
>
>
> At 10:35 AM -0400 3/19/08, Nathan Nobbe wrote:
> >On Wed, Mar 19, 2008 at 9:42 AM, Andrew Ballard <aballard@gmail.com> wrote:
> >
> >> That works; I'm just wondering why you went with a count on an 'ID'
> >> column
> >> rather than COUNT(*).
> >
> >
> >ouch, it looks like im horribly wrong :O
> >mysql> select count(*) from table;
> >+----------+
> >| count(*) |
> >+----------+
> >| 361724 |
> >+----------+
> >1 row in set (0.90 sec)
> >
> >mysql> select count(id) from table;
> >+------------+
> >| count(did) |
> >+------------+
> >| 361724 |
> >+------------+
> >1 row in set (4.56 sec)
> >
> >-nathan
>
> That surprised me as well.
>
> I thought that (*) meant "look up everything" and would have figured
> that (id) would have been quicker.
>
>
You generally want to explicitly specify column names rather than
using SELECT *, because it returns everything even if you don't need
it. But for aggregate COUNT, I'm not surprised by the results Nathan
got.
Andrew