Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用SQL查询来计算行数_Sql_Count_Aggregate - Fatal编程技术网

无法使用SQL查询来计算行数

无法使用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

这总是返回0。我有一个表tblArticles,它有一个AuthorID和ID主键用于文章

然后我有一个article投票表,其中有一个articleID列

给定用户13405,我需要找出他们在所有文章中的投票数


只是确认一下,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语句的符号之外,它们不应该执行到相同的结果集吗?