【发布时间】:2009-09-06 15:55:59
【问题描述】:
我正在尝试让全文搜索按相关性排序 Doctrine_RawSql 查询。
此代码将执行搜索:
$q = new Doctrine_RawSql();
$q->select('{p.*}')
->from('cms_page p')
->where('match(p.content) against (?)', $user_query)
->addComponent('p', 'CmsPage p');
这将执行。我希望结果按相关性排序
真正的 sql 看起来应该是这样的:
select
p.id,
match(p.content) against (?) as score
from
cms_page as p
order by
score desc;
所以我需要在选择中获得匹配...反对子句...我想。
我对实现这一点的胡扯猜测是:
$q->select("{p.id}, match({p.content}) against ('$escaped_user_query') as score")
->from('cms_page p')
->orderBy('score DESC')
->addComponent('p', 'CmsPage p');
这行不通。有什么指点吗?
提前致谢!
【问题讨论】: