1

我正在从子查询向新测量值插入行。子查询返回 2 行,但实际上只有 1 行插入到新测量中。此外,时间设置为 0,这意味着我必须将 RETENTION POLICY "autogen" 中的持续时间设置为 1.1.1970 之前。

这是 StoreSales 的内容:

INSERT StoreSales,StoreNumber="1",EnteredBy="Jake",Month=201906 value=1000
INSERT StoreSales,StoreNumber="1",EnteredBy="Jill",Month=201906 value=2000 
INSERT StoreSales,StoreNumber="2",EnteredBy="Jill",Month=201905 value=2000 
INSERT StoreSales,EnteredBy="Ann",Month=201906 value=1000 

将持续时间设置为 Unix 纪元之前:

ALTER RETENTION POLICY "autogen" on "DT" duration 450000h0m0s
ALTER RETENTION POLICY "autogen" on "DT" shard duration 450000h0m0s

这是我要使用的插入: SELECT * INTO "StoreSalesByStoreByMonth" FROM ( SELECT Sum(value) FROM "StoreSales" WHERE StoreNumber !='' GROUP BY StoreNumber, Month)

结果是:

time written
---- -------
0    2

但是 StoreSalesByStoreByMonth 只包含一条记录:

SELECT * FROM "StoreSalesByStoreByMonth" 名称:StoreSalesByStoreByMonth

time Month  StoreNumber sum
---- -----  ----------- ---
0    201906 "1"         3000

Month=201905, StoreNumber="2" 的记录丢失。在没有 StoreNumber 的 StoreSales 中有记录,目的是为了验证 group by 排除了没有该标签的记录。

如何从插入的子查询中获取所有记录?我可以在某处的查询中设置时间,所以我不需要将 RETENTION POLICY “autogen”设置为 1.1.1970 之前?

4

0 回答 0