php - laravel5.2 的sql语句问题
本文介绍了php - laravel5.2 的sql语句问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
数据库结构如下所示
course表
sc表
student表
laravel的sql语句代码
$get_all = sc::leftJoin("student", "sc.sid", "=", "student.snum")
->Join("course", "sc.cid", "=", "course.cno")
->where('sc.cid', '=', $id)
->where(number_format('sc.grade',2), '=', $max)
->get();
因为sc表中的成绩是用float类型存储的,所以必须对sc表进行取到小数点后两位需要进行number_format
处理,,,,但是最大的问题就是报错
想要达到的效果是通过传过来的课程id和成绩的max值,来获取对应的学生信息,,感觉可以把成绩的max值去掉直接通过课程id值来获取课程最高成绩的学生信息,,,但是不知道怎么做。。。。还望大神指点,,,,什么方法都行
解决方案
$get_all = sc::leftJoin("student", "sc.sid", "=", "student.snum")
->Join("course", "sc.cid", "=", "course.cno")
->where('sc.cid', '=', $id)
->whereRaw("format(sc.grade,2) = $max")
->get();
这篇关于php - laravel5.2 的sql语句问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文