我有一个包含多个层次结构的文档。像这样:
{
"id": "520707438",
"pageURIHash": "3988665684",
"children": [],
"parentId": null,
"content": "Here is a parent comment"
}
children数组可能具有其他子注释作为JSON对象,每个子注释又可能具有其他子注释。因此,这形成了一个高度嵌套的结构。
现在,假设我想在带有ID
作为123456745
的注释中添加子注释。我假设我知道根级别的注释(以便可以在我的USE KEYS
查询中使用N1ql
子句)。如何提取与具有该特定ID的注释相对应的children
数组,并为其添加新注释?我可以使用子文档API,但是它要求我知道路径,在这种情况下,我不知道它。
我做了一些研究,并提出了以下查询:
"UPDATE default d use keys \"" + comment.getRootCommentId()
+ "\" SET (??? How do I get the existing array and append to it) FOR p WITHIN d.children WHEN p.id = \"" + comment.getId() + "\" END";
非常感谢!
答案 0 :(得分:3)
这应该做您想要的:
declare sample_table table ([values] varchar(100))
insert into @sample_table
select distinct t1.value
from my_tablw as t1
--one way to use it
select *
from newTable
where columnVal in (select * from @sample_table)
--another way to use it
select at.*
from anotherTable at
inner join @sample_table t on
t.column = at.column
--and another way...
select f.*
from finalTable f
where exists (select * from @sample_table t where t.column = f.column)