我为学校建立一个博客,我想显示每个主题的评论数。然而,我对如何实现这个目标有点迷茫,任何帮助都会非常感谢!
我有 2 张 table
CREATE TABLE `blog_message` (
`MessageID` int(30) NOT NULL AUTO_INCREMENT,
`Username` varchar(45) NOT NULL,
`Message` text,
`AddedDate` datetime DEFAULT NULL,
`Title` varchar(45) DEFAULT NULL,
PRIMARY KEY (`MessageID`)
)
CREATE TABLE `blog_comments` (
`CommentID` int(30) NOT NULL AUTO_INCREMENT,
`MessageID` int(30) DEFAULT NULL,
`Author` varchar(45) DEFAULT NULL,
`CommentMessage` text,
`AddedDate` datetime DEFAULT NULL,
PRIMARY KEY (`CommentID`),
KEY `blog_comments_ibfk_1` (`MessageID`),
CONSTRAINT `blog_comments_ibfk_1` FOREIGN KEY (`MessageID`) REFERENCES `blog_message` (`MessageID`)
)
我的目标是
在 GridView 中显示
int 表格格式 评论数 |标题 |用户名 |创建日期
最佳答案
以下是MySQL语法,不确定你用的是什么。但这将返回一个 MessageIds 列表以及它们拥有的评论数。
----------------------------
| MessageId | comment_count|
----------------------------
| 1234 | 34 |
----------------------------
SELECT bm.MessageId, count(bc.CommentId) as comment_count
FROM blog_comments bc, blog_message bm
WHERE bm.MessageId = bc.MessageId
GROUP BY bm.MessageId
如果您想要作者和AddedDate,只需将其添加到SELECT
语句中(即SELECT bm.MessageId, count(bc.CommentId) as comment_count, bm.AddedDate, bm.Author
)。
关于asp.net - 如何在 GridView 中显示另一个表的计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11571241/