Power Query中Binary数据类型的适用场景是什么?
Power Query中Binary数据类型的适用场景
Power Query里的Binary类型和你理解的「二进制数字(0/1)」完全是两回事,它是用来存储原始二进制数据流的类型,简单说就是把文件、字节数组这类非文本/数值的原始数据打包成一个对象来处理。
它的典型适用场景:
- 导入本地文件时,Power Query会先把整个文件内容读取为Binary类型,再根据文件格式(如Excel、CSV、图片)解析成对应的数据结构
- 处理API返回的二进制响应,比如下载图片、压缩包这类非文本内容
- 读取数据库中的二进制字段(比如SQL Server的
VARBINARY、MySQL的BLOB类型) - 生成或修改二进制文件,比如合并多个文件的字节流
你报错的原因:
当你尝试把0/1组成的列转成Binary类型时,Power Query会默认把这些内容当作经过编码的字节字符串(比如Base64、UTF-8)去解码,但纯0/1的字符串不符合任何标准编码规则,所以触发"Invalid binary encoding"错误。
如果要处理二进制数字(0/1):
如果你是想存储或计算二进制数值,应该用常规的Number类型,需要时可以用函数转换:
- 把十进制数转成二进制字符串:
Number.ToText(10, "B")(返回"1010") - 把二进制字符串转成十进制数:
Number.FromText("1010", BinaryEncoding.Base2)
内容的提问来源于stack exchange,提问作者Stevoisiak
相关产品推荐
相关产品推荐

