Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
c008d7d0
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c008d7d0
编写于
11月 27, 2021
作者:
wmmhello
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
<fix>[TD-10990] fix stddev empty group by json->key
上级
7fab0805
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
9 addition
and
3 deletion
+9
-3
src/client/src/tscServer.c
src/client/src/tscServer.c
+1
-1
src/client/src/tscSubquery.c
src/client/src/tscSubquery.c
+2
-1
src/query/inc/qTableMeta.h
src/query/inc/qTableMeta.h
+1
-0
tests/pytest/stable/json_tag.py
tests/pytest/stable/json_tag.py
+5
-1
未找到文件。
src/client/src/tscServer.c
浏览文件 @
c008d7d0
...
...
@@ -1841,7 +1841,7 @@ int tscProcessRetrieveGlobalMergeRsp(SSqlObj *pSql) {
uint64_t
localQueryId
=
pSql
->
self
;
qTableQuery
(
pQueryInfo
->
pQInfo
,
&
localQueryId
);
bool
convertJson
=
true
;
if
(
tscMultiRoundQuery
(
pQueryInfo
,
0
)
)
convertJson
=
false
;
if
(
pQueryInfo
->
isStddev
==
true
)
convertJson
=
false
;
convertQueryResult
(
pRes
,
pQueryInfo
,
pSql
->
self
,
true
,
convertJson
);
code
=
pRes
->
code
;
...
...
src/client/src/tscSubquery.c
浏览文件 @
c008d7d0
...
...
@@ -2450,6 +2450,7 @@ int32_t tscHandleFirstRoundStableQuery(SSqlObj *pSql) {
STableMetaInfo
*
pTableMetaInfo
=
tscGetMetaInfo
(
pNewQueryInfo
,
0
);
tscInitQueryInfo
(
pNewQueryInfo
);
pNewQueryInfo
->
isStddev
=
true
;
// for json tag
// add the group cond
pNewQueryInfo
->
groupbyExpr
=
pQueryInfo
->
groupbyExpr
;
...
...
@@ -3708,7 +3709,7 @@ TAOS_ROW doSetResultRowData(SSqlObj *pSql) {
int32_t
type
=
pInfo
->
field
.
type
;
int32_t
bytes
=
pInfo
->
field
.
bytes
;
if
(
tscMultiRoundQuery
(
pQueryInfo
,
0
)
&&
pQueryInfo
->
round
==
0
&&
type
==
TSDB_DATA_TYPE_JSON
){
// for json tag compare in the second round of stddev
if
(
pQueryInfo
->
isStddev
&&
type
==
TSDB_DATA_TYPE_JSON
){
// for json tag compare in the second round of stddev
pRes
->
tsrow
[
j
]
=
pRes
->
urow
[
i
];
}
else
if
(
!
IS_VAR_DATA_TYPE
(
type
)
&&
type
!=
TSDB_DATA_TYPE_JSON
)
{
pRes
->
tsrow
[
j
]
=
isNull
(
pRes
->
urow
[
i
],
type
)
?
NULL
:
pRes
->
urow
[
i
];
...
...
src/query/inc/qTableMeta.h
浏览文件 @
c008d7d0
...
...
@@ -166,6 +166,7 @@ typedef struct SQueryInfo {
bool
stateWindow
;
bool
globalMerge
;
bool
multigroupResult
;
bool
isStddev
;
}
SQueryInfo
;
/**
...
...
tests/pytest/stable/json_tag.py
浏览文件 @
c008d7d0
...
...
@@ -105,7 +105,6 @@ class TDTestCase:
tdSql
.
checkRows
(
0
)
tdSql
.
query
(
"select jtag->'sex' from db_json_tag_test.jsons1 where jtag?'sex' or jtag?'num'"
)
tdSql
.
checkData
(
0
,
0
,
"
\"
femail
\"
"
)
tdSql
.
checkRows
(
3
)
tdSql
.
query
(
"select *,tbname from db_json_tag_test.jsons1 where jtag->'location'='beijing'"
)
...
...
@@ -290,6 +289,11 @@ class TDTestCase:
tdSql
.
checkData
(
1
,
2
,
1
)
tdSql
.
checkData
(
3
,
2
,
11
)
tdSql
.
query
(
"select stddev(dataint) from db_json_tag_test.jsons1 group by jtag->'location'"
)
tdSql
.
checkData
(
0
,
1
,
None
)
tdSql
.
checkData
(
1
,
0
,
0.5
)
tdSql
.
checkData
(
2
,
0
,
0
)
# test json->'key'=null
tdSql
.
execute
(
"insert into db_json_tag_test.jsons1_9 values('2020-04-17 15:20:00.000', 5, false, 'json19')"
)
tdSql
.
query
(
"select * from db_json_tag_test.jsons1"
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录