【发布时间】:2017-08-23 20:43:40
【问题描述】:
我很难将以下查询转换为 kohana 的 ORM。
所以,如果我做以下工作正常:
$query = DB::query(Database::SELECT, 'SELECT id_book, MATCH(title, author, isbn) AGAINST (:str) AS score FROM tab_books WHERE status = 1 AND MATCH(title, author, isbn) AGAINST (:str) HAVING score > '.$score.' ORDER BY score DESC LIMIT 100');
但是,我需要使用特定的类模型。到目前为止,我有:
$books = new Model_Book();
$books = $books->where('status', '=', 1);
$books = $books->where(DB::expr('MATCH(`title`,`author`,`isbn`)'), 'AGAINST', DB::expr("(:str)"))->param(':str', $search_terms);
这很好用,除了我无法使用分数值。我需要分数,因为我将表引擎更改为 InnoDB,第二个查询返回了很多结果。
这里的 ORM:https://github.com/kohana/orm/blob/3.3/master/classes/Kohana/ORM.php
感谢您的宝贵时间。
【问题讨论】:
标签: mysql kohana kohana-orm kohana-3.3