logo 知识库首页 ->SAP2000 ->后处理 ->快速过滤与高级过滤筛选异同
快速过滤与高级过滤筛选异同
创建者:王希,编辑者:张志国,最近更新:2022/03/15 10:45:25

问题描述:

       模型共包含29个节点,分别使用快速过滤和高级过滤依据节点标签进行筛选,快速过滤只筛选了节点标签6-9的行数据,如图1所示;而高级过滤筛选了所有节点标签大于5的行数据,如图2所示。请问为什么筛选的结果不一致?

图1:快速过滤筛选结果

图2:高级过滤筛选结果

解答:

      每个表格的数据列包含文本数据数字数据,二者的排序方式是不同的:文本数据按字母顺序排列,数字数据按数字顺序排列。假设数据列包含的数值是2510。按文本排序(字母顺序)会得到1025,按数字排序会得到2510SAP2000中的“节点”属于文本数据,因为节点标签实际上是文本,而不是数字;即使所有节点标签为数字也是如此。因此,当对“节点”进行排序或者使用“比较类”操作符(例如><)对其进行筛选时,程序将基于字母顺序(而不是数字顺序)对其进行排序或筛选。

       当对文本数据进行筛选时,过滤器字符串中引用的文本数据需要括在单引号中。对于快速过滤和基础过滤,程序会自动为用户添加单引号,因此在填写数值时无需添加单引号即可进行筛选添加反而会提示错误。对于高级过滤,用户必须自行为文本数据添加单引号,否则会提示错误。

       由此,对于问题描述中图1的筛选结果解读如下:Joint属于文本数据,使用“>”操作符对其进行筛选时,程序首先对节点标签按字母顺序排列,排列的结果如图3所示,然后进行筛选,所以节点“大于5”的只有6、7、8、9。

图3:“节点”按字母顺序排列结果(升序)

       当文本数据的数值均为数字时,存在一种特殊情况:用户可以在不使用单引号的情况下应用高级过滤,程序将其视为数字数据进行排序和筛选。因此,对于问题描述中图2的筛选结果,程序最终使用的过滤器字符串为:Joint > 5,数值5没有括在单引号中,过滤结果与对数字数据的筛选相同。但是需要注意的是,对于快速过滤和基础过滤,程序始终将文本数据视为文本,也就是说,程序最终使用的过滤器字符串中始终包含单引号。

  • 关键词列表
G
K
相关文章:

用户登录

用户名:

密码:

×