[英]How to convert this raw sql query to laravel eloquent or query builder?
[英]How do I convert raw SQL query into laravel querybuilder or eloquent
我很難在 phpmyadmin 中轉換這個原始的 MySQL 查詢。 我想將其轉換為 laravel 的查詢生成器或 eloquent。 我已經在 model 中配置了關系。 有人可以將我的查詢轉換為 querybuilder 和 eloquent 嗎? 我嘗試了一些轉換器,但它對我不起作用。 謝謝
原始查詢
SELECT count( * ) FROM users u, sectionschedules s, notes n
WHERE u.parent_id=26
AND u.section_id=s.section_id
AND s.id = n.schedule_id;
我試過的查詢
$notes = DB::table('notes')
->join('users', 'users.section_id', '=', 'notes.section_id')
->join('sections','sections.section_id', '=', 'sectionschedules.section_id')
->join('sectionschedules', 'sectionschedules.id','=','notes.schedule_id')
->where('user.parent_id', '=', 26)
->count();
我得到的錯誤
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'user.parent_id' in 'where clause
嘗試
$notes = DB::table('sectionschedules')
->select('notes.*','sectionschedules.*','users.*')
->join('users','users.section_id', '=', 'sectionschedules.section_id')
->join('notes', 'sectionschedules.id','=','notes.schedule_id')
->where('users.parent_id', '=', 26)
->count();
$notes = DB::table('notes')
->join('users', 'users.section_id', '=', 'notes.section_id')
->join('sections','sections.section_id', '=', 'sectionschedules.section_id')
->join('sectionschedules', 'sectionschedules.id','=','notes.schedule_id')
->where('users.parent_id', '=', 26)
->count();
定義的 Users.parent id 不是 user.parent_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.