gpt4 book ai didi

sql - sql 如何计算 sql 存储过程中的附加表?

转载 作者:行者123 更新时间:2023-12-04 16:08:19 29 4
gpt4 key购买 nike

我有一个存储过程(称为 sprocGetArticles),它从文章表中返回文章列表。这个存储过程没有任何参数。

用户可以对每篇文章发表评论,我将这些评论存储在由文章 ID 链接的评论表中。

有什么方法可以对 sprocGetArticles 存储过程中返回的列表中的每个 articleid 进行评论计数,以便我只需调用一次数据库?

我的问题是我需要文章 id 来计算我似乎无法声明的计数。

无论如何,这是最好的方法吗?

最佳答案

SQL 允许整个标量 subqueries作为投影列返回。子查询可以是correlated与父查询。所以很容易计算子查询中的评论数,该子查询计算给定文章 id 的评论数:

SELECT a.*, (
SELECT COUNT(*)
FROM Comments c
WHERE c.article_id = a.article_id) AS CountComments
FROM Articles a;

请注意,每次计算评论可能会非常昂贵,最好将计数保留为文章属性。

关于sql - sql 如何计算 sql 存储过程中的附加表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1149241/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com