微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

停留在SQL查询上以计算行数

如何解决停留在SQL查询上以计算行数

|
SELECT 
  COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v 
INNER JOIN tblArticles AS a 
  ON v.ArticleID = a.ID 
     AND a.AuthorID = 13405
它总是返回0。我有一个
tblArticles
,其中有
AuthorID
ID
文章的主键)。 然后,我有一个带有ѭ4with列的文章投票表。 给定用户
13405
,我需要找出他们所有文章的投票数! 只是为了确认,ѭ6中当前有一条记录,其商品ID为ѭ7。文章ID 5的作者ID为13405。     

解决方法

        嗯... JOIN中的AuthorID看起来很奇怪...也许效果更好?
SELECT COUNT(*) AS TotalUserVotes
  FROM tblArticleVotes AS v INNER JOIN
  tblArticles AS a ON v.ArticleID = a.ID
  WHERE a.AuthorID = 13405
    ,        尝试将\“ AND \”更改为\“ WHERE \”:
SELECT COUNT(*) AS TotalUserVotes
FROM tblArticleVotes AS v INNER JOIN
tblArticles AS a ON v.ArticleID = a.ID WHERE a.AuthorID = 13405
高温超导     ,        您的查询没有错。要排除故障,请中断查询。
DECLARE @ArticleID int
SELECT @ArticleID = a.ID FROM tblArticles a WHERE a.AuthorID=13405

PRINT @ArticleID
SELECT * FROM tblArticleVotes where ArticleID=@ArticleID
    ,        试试这个代替:
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
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。