SQL 语句在 M 里是以文本形式存在,例如你用的是 MySQL ,生成的 M 代码是:
= MySQL.Database("服务器地址", "数据库名", [Query="select * from products where productname like '计算机'"])
问题可以简化为:有一段文本是"select * from products where productname like '计算机'",如何根据用户输入的值让文本动态变化?
可以先在 Excel 单元格里输入"计算机"三个字,Ctrl+T 插入表格,并在名称管理器里命名为"参数"。
然后在查询编辑器中添加自定义步骤:
= Excel.CurrentWorkbook(){[Name="参数"]}[Content][参数]{0}
步骤名命名为"参数",这样就获取到了用户输入的值,再和前面不变的常量拼接起来就行了。
= "select * from products where productname like '" & 参数 & "'"