我想知道如何将全文搜索查询与附加子句结合起来以首先显示最后更新的行。
我有一个数据库 - advertisements
,该表有很多字段,其中一个是“标题”。我用全文搜索来搜索这个专栏。
示例数据库:
- 标题为:初级 PHP 开发人员的行
- 标题行:高级 PHP 开发人员
- 标题为:C++ 开发人员的行
如果我搜索我的网站,例如:
"PHP Developer"-> 然后结果集将是
- 初级 PHP 开发人员
- 高级 PHP 开发人员
- C++ 开发人员
哪个好。
但是我需要扩展它以返回最后更新的准确结果。
我在数据库中有 updated_at
列。
例如当我搜索我的网站时,我希望获得如下结果:
"PHP Developer"-> 那么我想要的结果集应该是:
首先显示“PHP Developers”,但首先显示最后更新的
然后向所有其他开发人员(例如c++开发人员)展示他们也必须按照最后更新的顺序排列
我希望结果类似于(搜索“PHP Developer”时):
- 初级
PHP 开发人员
- 例如updated_at 列 =13.02.16
- 高级
PHP 开发人员
- updated_at=10.02.16
初级
PHP 开发人员
- updated_at=04.01.16
C++
开发人员
- updated_at=13.02.16
- Java
开发人员
- updated_at=02.02.15
我该怎么做?
最佳答案
您可以在 updated_at
列上使用 order by,例如
<your-query-here>
order by updated_at asc
或者你可以创建某种派生的顺序和顺序,比如
<your-query-here>
order by
(
case
when <something> then 1
when <something-else> then 2
...
end
) asc
关于php - MySQL,全文搜索以显示最后更新的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35378886/