Dynamic Input Elements

上面两节都进行了SQL查询。在进行数据分析的时候,一个常见的场景是选择同一个维度不同的值进行分析,例如:

select * from mydb.retail_parquet where country="England";
select * from mydb.retail_parquet where country="France";
select * from mydb.retail_parquet where country="Germany";

image-20240309225242449

我们需要写不同的SQL语句,然后运行。这样很不方便。

Dynamic Input Elements

在Zeppelin中,动态表单是一种可以根据用户输入动态更新默认值的表单。

动态表单中默认值的动态更新是指当用户在表单中输入了某些值后,其他表单字段的默认值会根据这些输入值进行动态更新。这样可以提高用户的操作效率和体验,同时也可以减少用户的输入错误。

动态表单中默认值的动态更新在许多场景下都非常有用。例如,在数据分析任务中,用户可能需要根据不同的数据集进行分析,而每个数据集的字段和默认值可能不同。通过使用动态表单中默认值的动态更新,用户可以方便地切换数据集并自动更新相关字段的默认值。


我们以上面的场景为例,给country列做Dynamic Input,这样可以从四个国家中进行选择:

%sql
select * from retail_parquet where country="${country=England,England|France|Germany|unknown}"

选择到哪个国家,就会执行对应的country=xx

image-20240309230731035

我们再看一个场景,在查看完数据后可能要对某一列做顺序或倒序排序,这个时候也能用Dynamic Input:

image-20240309231230232

SQL语法进行更新:

%sql
select * from retail_parquet order by salary ${Order By=desc,asc|desc}

选择Order by,进行顺序或倒序的排序:

image-20240309231352182