【发布时间】:2018-07-13 08:43:15
【问题描述】:
我正在制作一个带有电影评分系统的电影数据库,我想显示平均评分最高的电影。
这是我的数据库的结构:
表 movies_ratings : id | movie_id (themoviedb api) |评分 表电影: id |电影ID |标题 |概览 |流派 |海报路径 |人气(themoviedb api)
我的模型中有我的班级评分:
class Rating extends Connection {
public function rate($id, $value) {
$sql = 'INSERT INTO `movies_ratings` (`movie_id`, `rating`) VALUES(?, ?)';
$params = [$id, $value];
$req = $this->query($sql, $params);
}
public function avg($id) {
$sql = 'SELECT AVG(`rating`) AS avg FROM `movies_ratings` WHERE `movie_id` ='.$id;
$params = [$id];
return $req = $this->query($sql, $params, 'one');
}
}
我做了一个按受欢迎程度显示电影的功能,它可以工作:
public function getPopularMovies($offset = null) {
$sql = 'SELECT * FROM `movies` ORDER BY `popularity` DESC';
if ($offset) $sql .= ' LIMIT '.$offset;
return $this->query($sql, null, 'all');
}
但我未能制作按评分显示电影的功能。你能帮帮我吗?
谢谢
【问题讨论】: