[英]MySQLi inner join not working properly
我有一個查詢,它選擇顯示與它的評級。 但是,如果沒有任何費率,它將無法正常工作。 我希望它即使在評級表上發現零結果時也能正常工作。
我的查詢是
$shows = $DB->query('SELECT
p.id, p.title, p.cover, p.summary, p.genre, p.year,
ROUND(AVG(pr.rating), 1) AS rating_average
FROM shows p
INNER JOIN shows_ratings pr
ON pr.showid = p.id');
用左聯接更改內部聯接。
說明:您試圖在另一個表中不存在的鍵上聯接兩個表,這就是為什么在內部聯接中沒有得到任何結果的原因。 當等級表中沒有鍵時,左聯接將把等級返回為空。
$shows = $DB->query('SELECT
p.id, p.title, p.cover, p.summary, p.genre, p.year,
ROUND(AVG(pr.rating), 1) AS rating_average
FROM shows p
LEFT JOIN shows_ratings pr
ON pr.showid = p.id');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.