在该表中,一列包含两个相同的行,即courseid列。有两排和612排一样。现在,我想编写一个查询,将该行显示为第一行和之后的剩余行。
课程Map表
课程表
用户
我写了下面这样的查询,但它不工作。
public function gettrendingcourse(){
$sql="SELECT * FROM
course c
INNER JOIN course_student_mapping cm
ON cm.courseId = c.courseId
INNER JOIN users u
ON c.userId = u.userId
INNER JOIN category s
ON s.categoryId=c.categoryId
GROUP BY c.courseId HAVING count(*) >= 1
ORDER BY cm.courseId DESC ";
$query=$this->db->query($sql);
return $query;
}
2条答案
按热度按时间zaq34kh61#
inner join users u on c.userid=u.userid-这会引发一个错误,课程中没有可见的userid,我怀疑连接应该在cm.studentid上。
thtygnil2#
在中使用子查询
ORDER BY
条款以获得按学生人数排序的课程: