历史版本4 :SQL 数据集定义参数 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1、必须遵循的命名规则编辑

1)不能以数字$符号开头;

2)变量名只能是字母(a-z A-Z)数字(0-9)下划线(_)(@)中文的组合,并且之间不能包含空格;

3)变量名中不能含有? * . - 等字符和空格

4)变量名不能使用编程语言的保留字。比如小写的true、false等保留字。但大写的TRUE、FALSE可以。

2、经典命名规则编辑

1)匈牙利命名法

该命名法是在每个变量名的前面加上若干表示数据类型的字符。基本原则是:变量名=属性+类型+对象描述。如i表示int,所有i开头的变量命都表示int类型。s表示String,所有变量命以s开头的都表示String类型变量。

2)骆驼命名法

正如它的名称所表示的那样,是指混合使用大小写字母来构成变量和函数的名字。驼峰命名法跟帕斯卡命名法相似,只是首字母为小写,如userName。因为看上去像驼峰,因此而得名。

3)帕斯卡命名法,即pascal命名法

做法是首字母大写,如UserName。

3、注意事项编辑

1)字符参数有英文单引号'${adce}',数字参数没有英文单引号${adce}。其中adce为参数。

2)参数值的引用格式为参数前面加$符号,如$adce

3)模板参数与全局参数重名时,采用模板参数。

4、常见应用编辑

1)简单应用

可以在定义数据集sql的时候,直接使用where条件定义参数,并过滤出需要的数据,从而大大缩短取数时间,类似下面的sql:

SELECT * FROM 销量 where 地区 = '${地区}'  

2)带公式的应用

数据集sql中可以使用参数宏${}动态地生成过滤条件,${}中的语句在FineBI中执行,将${}的执行结果与sql语句拼接起来形成最终的查询语句,传递给数据库执行,可以使用多个${},如下语句:

SELECT * FROM new_dian where 1=1 ${if(len(店性质) == 0,"","and 店性质 in ('" + 店性质 + "')")}   

SELECT * FROM 订单 where 1=1 ${if(len(area) == 0,"","and 货主地区 = '" + area + "'")} ${if(len(province) == 0,"","and 货主省份 = '" + province + "'")}  

${}中可以使用所有内置的FineBI公式,如if函数。全部公式/函数可参考函数

${}中除了FineBI内置的函数名、常量外,还有自定义的参数;

比如上面第二个SQL语句,if公式是FineBI内置的公式,area和province都是自定义的参数。如果len(area)!=0,即area参数不为空,比如说area的值为华东,那么if语句的执行结果为and 货主地区='华东',然后再把这句话拼接到SQL语句当中,SQL语句就变成:

SELECT * FROM 订单 where 1=1 and 货主地区='华东'