关于关联查询数据统计排序的问题 ?

course 课程表

id(自增id) name(课程名字)
25 语文
26 数学
27 英语
28 化学

record 学习记录表

id(自增id) cid(课程自增id) uid(用户id)
1 25 888
2 25 888
3 26 888
4 26 888
5 26 888
6 27 888
7 27 888
8 27 888
9 27 888

course 表中的 id = record 表中的 cid, uid 是用户id

如何查询出所有课程的同时, 用这个课程的 学习记录条数 来进行排序
不使用 Eloquent ORM , 用普通的查询构造器如何实现( laravel 5.1 ),请各位大侠指点迷津,非常感谢

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 5

原生语句

SELECT 
COUNT (record.cid) AS records, 
course.name 
FROM 
course 
LEFT JOIN record ON record.cid = course.id 
GROUP BY 
course.name 
ORDER BY 
records

DB格式

DB::table('course')
->leftjoin('record', 'record.cid', '=', 'course.id')
->selectRaw('COUNT(record.cid) AS records, course.name')
->groupBy('course.name')
->orderBy('records', 'desc')
->get();
5年前 评论

@青风百里 谢谢,非常感谢:pray:

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!