【问题标题】:Convert query from laravel eloquent to raw sql将查询从 laravel eloquent 转换为原始 sql
【发布时间】:2019-05-31 05:11:40
【问题描述】:

有人可以帮我将这个雄辩的查询转换为 SQL 查询,因为我正在尝试研究这段代码。而且我很难理解这段代码是什么,因为我是 eloquent 的新手,但我对 SQL 有一些经验。

$checkInDate = date("d-m-Y", strtotime($request->start_date));
$checkOutDate = date("d-m-Y", strtotime($request->end_date));

$availableRooms = $this->_availablerooms->from('availableRoom as r')
    ->selectRaw('*,r.roomDoorNum, r.isAvailable, rt.title as roomType,res.roomReservedID')
    ->join('roomtype as rt','rt.roomTypeID','=','r.roomTypeID')
    ->leftjoin('roomReserved as rr','rr.roomID','=','r.roomID')
    ->leftjoin('reservation as res','res.roomReservedID','=', DB::raw('rr.roomReservedID AND (res.reservationDate BETWEEN '."$checkInDate".' AND ' ."$checkOutDate". ' OR res.expiryDate BETWEEN '."$checkInDate".' AND ' ."$checkOutDate".')' ))
    ->get();

return $availableRooms;

【问题讨论】:

  • 您需要哪个版本的 SQL?请适当地标记问题。

标签: php mysql sql laravel eloquent


【解决方案1】:

真的没有人能为你做到这一点。明天,您可能需要一些其他查询才能进入和探索。所以我的建议是安装 https://github.com/barryvdh/laravel-debugbar 这个包,它将负责将 eloquent 查询转换为原始查询。

【讨论】:

    猜你喜欢
    • 2019-04-29
    • 2019-04-04
    • 2021-09-11
    • 2016-04-27
    • 2018-10-11
    • 2018-09-12
    • 2020-02-07
    • 2019-02-03
    • 2020-10-03
    相关资源
    最近更新 更多