2009/9/8 Anandh Kumar <[email protected]>: > > > > Hi everyone > > Consider there are three tables book,money,card in database. > > Book has got column names name,price. > > Money has got column names price,type. > > Card has got column names type,id. > > Now based on the 'id' of the 'card' i've to fetch 'name' of the 'book'. > > So i m writing a query in RoR model as > > > > Book.find(:all, :select => "book.name", > :joins => "INNER JOIN money ON money.price = > book.price"+ > "INNER JOIN card ON card.type = money.type", > :conditions => "`card`.`id` = '10'") > > > But this doesnt work.Is there any alternate query or i m missing > something in this query.
Don't use a column called type, it is a reserved word in rails as it is used in Single Table Inheritance. There are workarounds but much better not to use it if possible. You have not told us what are the relationships between the models. If you set these up appropriately rails will almost always generate the joins for you. If you have to specify joins explicitly then possibly you have not set your relationships up correctly. Colin --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---

