Hello,
   I am looking for a join query between 3 tables that will give me the
results I'm looking for.

I have a properties tables that has many layouts and many photos as
well.  The layouts table can also, have many layouts.   When I run the
query, I want to show a list of properties w/ one main photo from the
photos table, and a list of layouts per property.   Right now, the query
I have will show a list of properties, but properties will be displayed
multiple times if there are more than one photos.   Here's my current
query in rails form:

[code]
    @properties = Property.paginate(:page => params[:page],
                                      :select => ["properties.*,
layouts.*, photos.*"],
                                        :joins => ["INNER JOIN layouts
ON layouts.property_id = properties.property_id LEFT JOIN photos ON
photos.property_id = properties.property_id"],
                                          :per_page => 20)
[/code]

or, in raw sql:

[code]
SELECT properties.*, layouts.*, photos.photo_file_name FROM `properties`
INNER JOIN layouts ON layouts.property_id = properties.property_id LEFT
JOIN photos ON photos.property_id = properties.property_id WHERE
(properties.property_status='available') ORDER BY layouts.rent LIMIT 20
OFFSET 0
[/code]

Any help would be greatly appreciated!

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to