php - 将 Sql leftjoin 查询转换为 Laravel 格式

标签 php mysql laravel

我的查询在 MySQL 中给出了正确的结果,现在我需要在 Laravel 查询中进行转换。 我当前的查询是:

SELECT menu_choices.*
FROM menu_choices
LEFT JOIN menus
ON menus.id=menu_choices.menu_id WHERE menus.restaurant_id=1
ORDER BY menus.menu_name;

在 laravel 中,我是这样做的:

MenuChoice::select('name')->leftJoin('menus','menus.id','=','menu_choices.menu_id')
        ->where('menus.restaurant_id',1)
        ->orderBy('menus.menu_name')
        ->get();

最佳答案

你在 laravel 中的查询将是这样的:

MenuChoice::leftJoin('menus','menus.id','=','menu_choices.menu_id')
        ->select('menu_choices.*')
        ->where('menus.restaurant_id',1)
        ->orderBy('menus.menu_name')
        ->get();

您还可以从这里更多地了解使用连接的 Laravel 查询:

https://laravel.com/docs/5.4/queries#joins

谢谢

关于php - 将 Sql leftjoin 查询转换为 Laravel 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42420707/

相关文章:

php - 如何在提交表单后自动选择列表菜单中的选中项?

mysql - 在mysql数据库中使用ibatis添加新人

javascript - Laravel-Mix 使用 webpack : JQuery is not autoloaded

php - 如何通过 PHP 的 .htaccess 设置时间?

php - 如何修改时间戳

mysql - 是否可以通过复选框之类的输入来执行 SQL 注入(inject)?

mysql - Devart LinqConnect for mysql 字段初始值设定项无法引用非静态字段、方法或属性

Laravel - Redirect::预期路线不起作用

php - 如何在 Laravel 5.6 中动态地向数据库添加列

javascript - Ajax:ajax 响应中的链接不起作用