Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
43ac6fb1
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看板
提交
43ac6fb1
编写于
5月 23, 2023
作者:
S
shenglian zhou
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: all null from block sma
上级
8cba6850
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
2 deletion
+10
-2
source/libs/scalar/src/filter.c
source/libs/scalar/src/filter.c
+10
-2
未找到文件。
source/libs/scalar/src/filter.c
浏览文件 @
43ac6fb1
...
...
@@ -3722,7 +3722,15 @@ int32_t fltSclBuildDatumFromBlockSmaValue(SFltSclDatum* datum, uint8_t type, int
return
TSDB_CODE_SUCCESS
;
}
int32_t
fltSclBuildRangeFromBlockSma
(
SFltSclColumnRange
*
colRange
,
SColumnDataAgg
*
pAgg
,
SArray
*
points
)
{
int32_t
fltSclBuildRangeFromBlockSma
(
SFltSclColumnRange
*
colRange
,
SColumnDataAgg
*
pAgg
,
int32_t
numOfRows
,
SArray
*
points
)
{
if
(
pAgg
->
numOfNull
==
numOfRows
)
{
SFltSclDatum
datum
=
{.
kind
=
FLT_SCL_DATUM_KIND_NULL
};
SFltSclPoint
startPt
=
{.
start
=
true
,
.
excl
=
false
,
.
val
=
datum
};
SFltSclPoint
endPt
=
{.
start
=
false
,
.
excl
=
false
,
.
val
=
datum
};
taosArrayPush
(
points
,
&
startPt
);
taosArrayPush
(
points
,
&
endPt
);
return
TSDB_CODE_SUCCESS
;
}
SFltSclDatum
min
;
fltSclBuildDatumFromBlockSmaValue
(
&
min
,
colRange
->
colNode
->
node
.
resType
.
type
,
pAgg
->
min
);
SFltSclPoint
minPt
=
{.
excl
=
false
,
.
start
=
true
,
.
val
=
min
};
...
...
@@ -3749,7 +3757,7 @@ bool filterRangeExecute(SFilterInfo *info, SColumnDataAgg **pDataStatis, int32_t
if
(
foundCol
)
{
SColumnDataAgg
*
pAgg
=
pDataStatis
[
j
];
SArray
*
points
=
taosArrayInit
(
2
,
sizeof
(
SFltSclPoint
));
fltSclBuildRangeFromBlockSma
(
colRange
,
pAgg
,
points
);
fltSclBuildRangeFromBlockSma
(
colRange
,
pAgg
,
numOfRows
,
points
);
SArray
*
merged
=
taosArrayInit
(
8
,
sizeof
(
SFltSclPoint
));
fltSclIntersect
(
points
,
colRange
->
points
,
merged
);
bool
isIntersect
=
taosArrayGetSize
(
merged
)
!=
0
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录