Welcome to WebmasterWorld Guest from

Forum Moderators: open

Message Too Old, No Replies

Making sure a row does not display twice



7:22 pm on Dec 30, 2009 (gmt 0)

5+ Year Member

I have a search query in which I link two tables, like so:
$query = "SELECT * FROM `venues`, `events` WHERE `venues`.`vid` = `events`.`venue` AND (`type` LIKE '%Concert%')"

This query is called when a user searches for a specific event type, like "Concert." It is supposed to return all venues that have events with "Concert" in their types array.

It works fine, but the problem is if a venue has two events with the "Concert" type, this query returns the venue twice. I tried adding a check within the mysql while loop to make sure a venue isn't displayed twice, but because this is outside of the query, it interferes with my pagination. (i.e., if it's set to display 3 results per page, it will sometimes only display 2 because it filters out the duplicated venues without changing the query).

So, is there anything I can add directly to the query in order to make sure that a venue is not displayed more than once?



7:45 pm on Dec 30, 2009 (gmt 0)

WebmasterWorld Administrator lifeinasia is a WebmasterWorld Top Contributor of All Time 5+ Year Member Top Contributors Of The Month

Do you need to display anything from the events table? If not, just use "SELECT DISTINCT venues.*" instead of "SELECT *" in your query.


7:51 pm on Dec 30, 2009 (gmt 0)

5+ Year Member

Perfect, thanks!

Featured Threads

Hot Threads This Week

Hot Threads This Month