gpt4 book ai didi

mysql - 使用 Laravel 的 Schema 构建器有没有办法进行 ORDER BY FIELD 查询?

转载 作者:行者123 更新时间:2023-11-29 00:06:04 27 4
gpt4 key购买 nike

有没有办法进行 ORDER BY FIELD 查询?这是我目前拥有的。

$sets = DB::connection('mysql')
->table('sets')
->orderBy('type', 'asc')
->orderBy('releaseDate', 'asc')
->select('code', 'type', 'name')
->get();

还是必须直接写MySQL?

最佳答案

您可以使用 DB::raw()插入您的 ORDER BY FIELD 子句:

$sets = DB::connection('mysql')
->table('sets')
->orderBy(DB::raw('FIELD(type, "Banana", "Apple", "Orange", "Peach", "Grape")'))
->select('code', 'type', 'name')
->get();

当然要小心 SQL 注入(inject)...要检查最终的 SQL 是什么,您可以使用 Query Log运行 SQL 后:

$query_log = DB::getQueryLog();

关于mysql - 使用 Laravel 的 Schema 构建器有没有办法进行 ORDER BY FIELD 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27415995/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com