我正在创建一个论坛,所以我创建了一个包含帖子的表格。字段之一是Body
类型的with
XML
。现在,我想创建一个查询,该查询返回所有帖子以及每个帖子的子代数量。我正在使用聚合函数来执行此操作。我在使用汇总函数时需要使用group
by。当我使用中的字段时group by
,会出现以下异常:
除非使用IS NULL运算符,否则无法比较或排序XML数据类型。
我该如何解决?
我的查询是:
SELECT
Post.PostId, Post.[Body], Count(Children.PostId)
FROM
dbo.Post Post,
dbo.Post Children
WHERE
Children.ParentId = Post.PostId
GROUP BY
Post.PostId,
Post.[Body]
您可以在CTE中进行汇总,然后加入该汇总中
WITH Children(Cnt, ParentId)
AS (SELECT COUNT(*),
ParentId
FROM dbo.Post
GROUP BY ParentId)
SELECT P.PostId,
P.[Body],
ISNULL(Cnt, 0) AS Cnt
FROM dbo.Post P
LEFT JOIN Children /*To include childless posts*/
ON Children.ParentId = P.PostId
ORDER BY P.PostId
问题内容: 这不起作用: 任何想法如何通过id将插入范围缩小到特定行? 问题答案: 在插入语句中,您将没有现有行来执行操作?您要插入新行,是否意味着要执行更新语句?
如何将数据添加到xml文件中,并在其上附加其他数据(如果存在)? 我尝试了以下代码,但这段代码只创建了一个值节点,没有附加到文件中。它总是删除现有的,然后添加新的。
我试图在用户ID下添加新的用户数据,但它将旧数据替换为新数据,并添加另一个“users”和“user\u account\u settings”。 这是我的实时数据库:在此处输入图像描述 我的实时数据库必须是这样的:添加新的用户数据而不将旧数据替换为新数据,也不添加“用户”和“user_account_settings”。 这就是我想要的数据库结构示例:在此处输入图像描述 这是用于添加新用户的代码
问题内容: 如何在Oracle数据库的CLOB中包含的xml中添加属性?我可以使用UpdateXML函数来更新现有属性,但不会添加一个。 问题答案: 你可以使用一个组合与沿任,或删除现有的节点,然后用现在包括新的属性重新添加回来。
我目前正在Netbeans中使用sl4fj和log4j2编写一个小型的Maven Java应用程序。在生产环境中部署java属性时,我无法使用它。因此,我希望log4j2在我的项目中搜索并找到属性文件。我在谷歌上搜索了一下,并尝试了以下选项,但运气不佳; 更改了项目属性->Actions->Run project中的类路径,以包含xml文件 我还能尝试其他选择吗?它是一个maven项目,所以我不能
问题内容: 我有这样的查询- 由于将rowz = 1放入查询中,因此该查询无法正常工作?如果我只想要在嵌套后rowz = 1的结果该怎么办。 当我这样做时- 从news_article中选择unnest(string_to_array(na.news_category_id,’,’)):: int rowz; 我的桌子是- 然后它给了我这个结果- 问题答案: 这回答了您的问题: 诀窍是将数组放入一