Pat Allan
Can user_score be a name of group_by
Let's say I have this table.
id | user_id | title
--------------------
1 1 sphinx
6 1 sphinx
2 5 sphinx
3 5 sphinx
4 4 server
5 1 great
--------------------
I want to group_by(user_id) and say at least 2 times occurred in the
user_id for that
specific title.
Maybe something like this in Rails:
pages = Page.search('sphinx', :group_by => 'user_id', :group_function
=> :attr,
:group_clause => "@users desc")
But I want something like this:
group_by(user_id) if @at_least_found_to_times
In the end I need this result.
user_ids | users | title
----------------------------
1,5 2 sphinx
----------------------------
Can I use your method?
On Dec 10, 12:09 am, Pat Allan <[email protected]> wrote:
> Hi Stefan
>
> I think you should just be able to put that complex logic into an attribute,
> and use that for sorting:
>
> has "if( user_score ... )", :as => :custom_score, :type => :integer
>
> And then in searching, assuming you've got qualified as an attribute, and
> :sortable on user_name (or an explicit attribute based on that column):
>
> Model.search 'foo',
> :order => 'qualified DESC, custom_score ASC, user_name ASC'
>
> Let us know if that doesn't work.
>
> Cheers
>
> --
> Pat
>
> On 10/12/2010, at 1:58 AM, Stefan wrote:
>
> > Hello everyone!
>
> > I am trying to "translate" a mysql query to sphinx. The complicated
> > part is the ORDER BY clause. It is as follows:
>
> > ORDER BY qualified DESC,
> > if( user_score, if(( user_score=0 AND (user_title_en!=''
> > OR user_title!='')),-1,0),0),
> > if( user_pref, if( user_privilegies=0 , -1, 0), 0),
> > if( qualified, to_days(exam_date), -
> > (to_days(signup_date))),
> > user_name
>
> > Please, could anyone tell me if it is possible to sort results like
> > this in sphinx. I am searching for answers almost a week now and the
> > only think I found is information about "SPH_SORT_EXPR mode". But I
> > can't understand exactly how it works so I can chain all the "IF"
> > statements.
>
> > 10x in advance!!
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Thinking Sphinx" 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
> > athttp://groups.google.com/group/thinking-sphinx?hl=en.
--
You received this message because you are subscribed to the Google Groups
"Thinking Sphinx" 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/thinking-sphinx?hl=en.