然而,我从网上查看,找不到一个简单的(!)示例来展示如何使用动态参数值并拥有一个在 WHERE 中使用动态参数值的 SQL 查询。
我正在寻找的是,最终用户将能够更改电子表格(参数表?)中的列中的值,并使用此新值作为参数刷新数据。
也许一个例子最能描述我所追求的。
我在 Excel 中有一个表,其中有两列,名为“参数名称”和“参数值”。这些将具有值 PARM1 和 1
(抱歉,但似乎我无法在这里发布图片)
查询可能是这样的,所以如果 1=1 检索当前日期
(这是 Oracle,但对于大多数其他数据库应该是相同的)
从 DUAL 中选择系统日期,其中 1 = 1;
我应该如何更改上面的内容,以便它使用 ParamaterName 和 ParameterValue,即最右边的“1”可以动态更改为任何值。如果该值不是“1”,则不会返回任何结果。
提前致谢
我有另一种方法将参数传递到 Power Query 中。我确保它有效。
第一步:在Excel中创建一个名为“Infodesk”的表,也可以根据自己的喜好命名。我的表“Infodesk”包含“脚本”列,我将 SQL 脚本放置在该列中。
步骤2:创建一个空白的Power Query,单击高级编辑器,然后输入以下代码
let
Source = Sql.Database("192.168.23.81", "dbo.name", [Query= Excel.CurrentWorkbook(){[Name="Infodesk"]}[Content][Script]{0}])
in
Source
然后,运行您的查询。代码 [Script]{0}] 将从第一行获取数据,您可以在该列中放置多个脚本,然后更改 {0} >> {1} 或 {2} ... 以从其他行获取数据。
为了更改 SQL 脚本中的任何参数,您可以使用 Excel 函数 =CONCATENATE() 将多个 Excel 单元格组合成一个完整的 SQL。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)