Kohana Database Query Builder自定义排序顺序(MySQL中的“ORDER BY Field(id,1,3,2)”)

时间:2011-02-24 12:53:37

标签: sql-order-by kohana builder

我有一组要选择的ID,所以我要求:

$ids = array( 1, 2, 3, 4, 5 );
$q = DB::select('field1', 'field2', 'field3')->
     from('work')->
     where('field1', 'in', $ids)->execute();

我如何按照我的自定义顺序对它们进行排序,比如MySQL的'ORDER BY Field'呢?

1 个答案:

答案 0 :(得分:7)

查看DB::Expr

您可以像这样使用它:

->order_by(DB::Expr('FIELD(`field`, 3,1,2)'))

注意,您必须手动转义内容