-
1505121235 数据老手Lv5
发表于2020-2-26 19:16
楼主
本帖最后由 1505121235 于 2020-2-27 18:53 编辑
1.简介
3.2 参数设置
复制代码测试或运行时,该SQL将动态替换成:复制代码
1.简介
使用SQL语句建立主题表,同时充分利用普通物理主题表做表的各种统计方法等便利的做表方式。
2.功能入口
(1)数据集->主题表->新建主题表->SQL语句
(2)编辑报表模板->数据源->SQL主题->右键“新建”
3.功能使用说明
3.1 主界面
主界面元素与操作:
界面元素 | 含义 | 值举例 | |
数据存储连接池 | 可以选择连接池 | *|a|ds1|ds2|ora1|ms1 | |
数据库表、视图 | 可以双击选择表或试图 | ||
数据库表搜索框 | 可以输入部分关键词,点击放大镜,以查找表或视图 | ||
请输入sql查询语句 | SQL语句,支持宏,SQL语句中可带参数,通过<#=参数名#>的方式在SQL中引用 | select count(1) from abi11_elog_system | |
测试 | SQL语句输入完毕后,可以点击按钮测试SQL | 查询结果 | |
参数设置 | 弹窗内可以输入SQL使用时需要的参数列表 | ||
格式化 | 点击格式化,可以将SQL进行美化(格式化)显示 |
列名 | 含义 | 举例 | 备注 |
参数名称 | 直接在SQL中使用的参数名 | 参数名schoolname,则sql中能解析<#=schoolname#>为具体值 select * from chinauniversities where scn = '<#=schoolname#>' | |
参数描述 | 参数的含义描述文字串 | 学校名 | |
参数值 | 参数在具体使用时的具体值 | Wuhan University | 可以写常量,也可以写表达式,示例: (1)VOA 常量 (2)today() 表达式 (3)<#=login.id#> 全宏,对象表达式 (4)<#=@hy#> 全宏,引用参数 它们将在运行时动态替换。 select * from chinauniversities where scn = 'Wuhan University' |
例如,参数如上图设置后,可以写类似如下的SQL语句:
- select * from fszhzb where gbxyzxy like '%<#=hint#>%'
- select * from fszhzb where gbxyzxy like '%ask%'
3.3 主题表字段列表界面
这个界面可以为SQL主题表字段关联维表,
如果存储类型是“内存”,计算时,会自动加载维对应的库数据到系统内存库中;
如果存储类型是“数据库”,计算时,会自动加载维对应的库数据到系统库中。
如果存储类型是“无缓存”,计算时,将使用纯SQL分析原连接池下数据,这种情况,要求在原连接池下要有维表数据库表表名对应的数据库表。
3.4 设置数据期等主题表系统字段
3.5 保存SQL主题
关于存储类型的说明:
存储类型 | 含义说明 | 对应值 | 备注 |
内存 | 将数据放到系统内存缓存库连接池中 | mem | 内存库连接池目前是唯一的 |
数据库 | 将数据放到系统连接池下 | db | 使用系统库(系统管理-系统连接池) |
无缓存 | 在SQL主题对应的连接池和SQL下每次纯SQL动态取值,不缓存 | srcdssql | 仅对SQL主题生效 |
关于缓存时间的说明:
(1)缓存时间,也是缓存闲置时间,单位是秒,默认300秒,即5分钟,超过闲置时间(从最近一次访问时间算起)后,再次访问会重新获取,之前的数据会被删除。
(2)缓存时间,如果小于或等于0,表示不缓存,但每次仍将数据获取(加载)到系统内存库或系统库,然后再分析。
四、使用SQL主题字段做表
和其他普通主题表一样使用,可设置过滤条件、分组类型等数据统计分析相关属性。