For Programmers: Free Programming Magazines  


Home > Archive > PHP DB > December 2005 > Subject: GROUP BY [Was: SELECT]









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Subject: GROUP BY [Was: SELECT]
Neil Smith [MVP, Digital media]

2005-12-11, 7:59 am


>From: "Ron Piggott (PHP)" <ron.php@actsministries.org>
>Reply-To: ron.php@actsministries.org
>To: PHP DB <php-db@lists.php.net>
>Content-Type: text/plain
>Date: Sat, 10 Dec 2005 20:04:28 -0500
>Message-Id: <1134263069.3515.86.camel@localhost.localdomain>
>Mime-Version: 1.0
>Content-Transfer-Encoding: 7bit
>Subject: SELECT
>
>I am trying to put together a SELECT syntax. I am querying a response
>database and I only want to obtain each user's name once even if they
>have given more than 1 response.
>
>$query="SELECT * FROM conversation_table WHERE conversation_reference =
>$conversation_currently_displayed";


.... Add "GROUP BY conversation_user_id" or whatever column you use to
identify the user.

http://dev.mysql.com/doc/refman/5.0/en/select.html

Note that GROUP BY comes *before* any ORDER BY in your select (which
you aren't doing). By default, MySQL will order by the grouped
columns initially. Other databases you'd have to include the GROUP BY
column(s) in the select * statement, but MySQL allows you to do this
with non-selected fields as well.

Then spend some time on the MySQL site looking at the 'aggregate
functions' area now you've grouped the results - you'll find some
useful stuff you can do once that's happened :

http://dev.mysql.com/doc/refman/5.0...-functions.html

Cheers - Neil
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com