MySQL.Database 中的 sql 语句能不能调用外部参数或者函数?

Power Query Bin ⋅ 于 2018-11-07 10:59:13 ⋅ 最后回复由 yangyi1225 2018-11-07 15:29:15 ⋅ 2856 阅读

您好,用PowerQuery连接mysql数据库后,现在需要根据excel中某个单元格的数值来动态查询数据,现在已经把excel中的值调取写出函数了,现在就是调取后出问题了,返回的是个null,不调用函数的话是能正常查询结果的。
file
file
file
file

成为第一个点赞的人吧 :bowtie:
最佳答案
  • Alex MOD 社区清洁工
    2018-11-07 11:32:16

    提示很明显是数据类型的问题呀,左边是文本,右边是数字,& 不能连接文本和数字,要先把数字转成文本,加个 Text.From

回复数量: 11
  • Alex MOD 社区清洁工
    2018-11-07 11:01:42

    和上一个问题好像是一样的吧?参考下 https://pbihub.cn/qa/233#reply638

  • Bin
    2018-11-07 11:30:21

    @Alex 嗯,这个我试过,但是报错了。

    file

  • Alex MOD 社区清洁工
    2018-11-07 11:32:16

    提示很明显是数据类型的问题呀,左边是文本,右边是数字,& 不能连接文本和数字,要先把数字转成文本,加个 Text.From

  • Bin
    2018-11-07 11:35:18

    @Alex 哦哦,好了,谢谢,看来得花点时间研究下M语言:smile:

  • yangyi1225
    2018-11-07 14:41:19

    @Bin 楼主是怎么取到EXCEL单元格值的? 我照@Alex 在我那个问题中的方法设置了名称,也增加了自定义步骤

    自定义步骤 = Excel.CurrentWorkbook(){[Name="参数"]}[Content][参数]{0}

    但在最后拼接SQL语句之后 ,提示我 没有 参数 列。

  • Alex MOD 社区清洁工
    2018-11-07 14:44:36

    @yangyi1225 提示你的不是没有"参数"列,是没有"参数"这个步骤,你要把自定义步骤名改成"参数"才能引用啊。

  • yangyi1225
    2018-11-07 14:49:36

    @Alex 那完整版应该是:
    let

    参数 = Excel.CurrentWorkbook(){[Name="参数"]}[Content][参数]{0}
    源 = Sql.Database("127.0.0.1", "database", [Query="select * from products where 1=1 and productname = '%"& 参数 &"%'"])
    in

    这样么?

  • Alex MOD 社区清洁工
    2018-11-07 14:52:46
  • yangyi1225
    2018-11-07 15:13:02

    file
    第一步,将A2命名为 存货名称;
    file
    第二步,就是上面的语句部分
    file
    这里就是执行后错误的提示,找不到列。

  • Alex MOD 社区清洁工
    2018-11-07 15:14:31

    @yangyi1225 Crtl+T 插入表格。。。

  • yangyi1225
    2018-11-07 15:29:15

    @Alex 的确是CTRL+T的问题,我给忽略掉了,终于完美成功了,谢谢!

暂无评论~~
  • 请务必阅读并严格遵守《社区管理规范与使用说明》
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 发送表情,可用的 Emoji 见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板粘贴上传, 格式限制 - jpg, png, gif
  • 不支持上传附件,请尽可能用文字和图片将问题描述清楚,如实在需要上传附件,可上传到 共享网盘 后分享链接
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter