我发现很难理解为什么以下查询不起作用:
SELECT rating_count
FROM
(SELECT
title,
COUNT(rating) AS rating_count
FROM series
LEFT JOIN reviews ON series.id = reviews.series_id
GROUP BY series.id);
子查询的结果如下:
为什么当我尝试查询 rating_count
时,它不起作用?我想我可以要求这个。我的目的是过滤那些具有 Rating_count = 0
的行。
我想尝试:
SELECT *
FROM
(SELECT
title, COUNT(rating) AS rating_count
FROM series
LEFT JOIN reviews ON series.id = reviews.series_id
GROUP BY series.id)
WHERE rating_count = 0;
最佳答案
正如错误所述,您需要为派生表添加别名:
SELECT * FROM (
SELECT
title,
count(rating) as rating_count
FROM series
LEFT JOIN reviews
ON series.id = reviews.series_id
GROUP BY series.id
) AS t
WHERE rating_count=0;
关于sql - 在 SQL 中使用子查询返回每个派生表必须有自己的别名错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70669625/