You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SurrealDB中创建post_stats预定义聚合视图

解决方案

需求梳理

我拥有user表(字段包含id(主键)、name、email等),同时拥有city表(字段包含id(主键)、name等)。通过RELATE语句创建了作为user与city之间图边的post表,其结构包含user_id(关联user.id)、city_id(关联city.id)、post_count(用户在对应城市的发帖数)字段。现需创建名为post_stats的预定义聚合视图,结构包含city_id、city_name、user_count(该城市关联的用户总数)、post_total(该城市总发帖数)。

实现语句

针对使用RELATE语句的图数据库(如NebulaGraph),可使用以下语句创建聚合视图:

CREATE AGGREGATE VIEW post_stats
AS
    SELECT
        c.id AS city_id,
        c.name AS city_name,
        COUNT(DISTINCT p.user_id) AS user_count,
        SUM(p.post_count) AS post_total
    FROM post p
    JOIN city c ON p.city_id = c.id
    GROUP BY c.id, c.name;

语句说明

  • 通过JOIN关联post边表与city表,获取城市名称信息
  • COUNT(DISTINCT p.user_id)统计每个城市关联的唯一用户数量
  • SUM(p.post_count)累加该城市下所有用户的发帖数,得到总发帖量
  • 按城市id和name分组,确保每个城市的统计结果唯一

内容的提问来源于stack exchange,提问作者Raj Chaudhary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 00:25:11