jandrox_ox Posted December 25, 2008 Share Posted December 25, 2008 Here is the design of the database (small, don't be afraid to look): http://citizensforsocialjustice.com/wiki/images/design.jpg *Organization has and belongs to many keywords What I am trying to do: given an array of keywords, search all organizations that belong to at least 1 or those keywords BUT return the result in hit order (the organization that matched with the most keywords comes first, then the next one, and so on...). Quote Link to comment https://forums.phpfreaks.com/topic/138355-not-so-simple-query-help/ Share on other sites More sharing options...
Gamic Posted December 25, 2008 Share Posted December 25, 2008 create view vOrgsKeywords as select org.name as orgName, keys.name as keyWord, count(org.name) as countOfKeys from organizations org inner join keyword_organizations ko on org.id = ko.organization_id inner join keywords keys on keys.id = ko.keyword_id; Then, to query the data you want: select * from vOrgsKeywords where keyWord = 'somevalue' order by countOfKeysDesc; Quote Link to comment https://forums.phpfreaks.com/topic/138355-not-so-simple-query-help/#findComment-723504 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.