无法使用SQL查询来计算行数
这总是返回0。我有一个表tblArticles,它有一个AuthorID和ID主键用于文章 然后我有一个article投票表,其中有一个articleID列 给定用户13405,我需要找出他们在所有文章中的投票数无法使用SQL查询来计算行数,sql,count,aggregate,Sql,Count,Aggregate,这总是返回0。我有一个表tblArticles,它有一个AuthorID和ID主键用于文章 然后我有一个article投票表,其中有一个articleID列 给定用户13405,我需要找出他们在所有文章中的投票数 只是确认一下,Tbalaticleotes中目前有一条记录的articleID为5。文章ID 5的作者ID为13405。嗯。。。联接中的AuthorID看起来很奇怪。。。也许这样效果更好 SELECT COUNT(*) AS TotalUserVotes FROM tblArti
只是确认一下,Tbalaticleotes中目前有一条记录的articleID为5。文章ID 5的作者ID为13405。嗯。。。联接中的AuthorID看起来很奇怪。。。也许这样效果更好
SELECT
COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v
INNER JOIN tblArticles AS a
ON v.ArticleID = a.ID
AND a.AuthorID = 13405
嗯。。。联接中的AuthorID看起来很奇怪。。。也许这样效果更好
SELECT
COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v
INNER JOIN tblArticles AS a
ON v.ArticleID = a.ID
AND a.AuthorID = 13405
尝试将和更改为以下位置:
SELECT COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v INNER JOIN
tblArticles AS a ON v.ArticleID = a.ID
WHERE a.AuthorID = 13405
HTH尝试将和更改为以下位置:
SELECT COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v INNER JOIN
tblArticles AS a ON v.ArticleID = a.ID
WHERE a.AuthorID = 13405
HTH试试这个:
SELECT COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v INNER JOIN
tblArticles AS a ON v.ArticleID = a.ID WHERE a.AuthorID = 13405
请尝试以下方法:
SELECT COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v INNER JOIN
tblArticles AS a ON v.ArticleID = a.ID WHERE a.AuthorID = 13405
你的问题没有错。要解决此问题,请将查询打断
SELECT a.AuthorID, COUNT(v.id) as votes
FROM tblArticles AS a
LEFT JOIN tblArticleVotes AS v ON a.ID = v.ArticleID
GROUP BY a.ID
WHERE a.AuthorID = :author_id
你的问题没有错。要解决此问题,请将查询打断
SELECT a.AuthorID, COUNT(v.id) as votes
FROM tblArticles AS a
LEFT JOIN tblArticleVotes AS v ON a.ID = v.ArticleID
GROUP BY a.ID
WHERE a.AuthorID = :author_id
您确定tblArticles中有作者id正确且至少有一票的行吗?您可能希望向问题中添加一些示例数据行。您确定tblArticles中有任何行具有正确的作者id和至少一张投票票吗?您可能希望向问题中添加一些示例数据行。这与原始查询有何不同?除了sql语句的符号之外,它们不应该执行到相同的结果集吗?这与原始查询有什么不同?除了sql语句的符号之外,它们不应该执行到相同的结果集吗?