Google bigquery BigQuery LTRIM未返回所需的结果
我有以下SQL代码:Google bigquery BigQuery LTRIM未返回所需的结果,google-bigquery,Google Bigquery,我有以下SQL代码: SELECT LTRIM("0039040123456","0039") 结果应该是040123456,但BigQuery返回40123456 为什么还要修剪0 Bug还是预期的行为 非常感谢 列类型为字符串。看了文档后,我猜这种行为是有意的。看看水果的例子。试试这个: SELECT LTRIM("0039p40123456","p039") 40123456 它也删除了p 那是因为: 如果value2包含多个字符或字节,则函数将删除value2中包含的所有前导或尾随字
SELECT LTRIM("0039040123456","0039")
结果应该是040123456,但BigQuery返回40123456
为什么还要修剪0
Bug还是预期的行为
非常感谢 列类型为字符串。看了文档后,我猜这种行为是有意的。看看水果的例子。试试这个:
SELECT LTRIM("0039p40123456","p039")
40123456
它也删除了p
那是因为:
如果value2包含多个字符或字节,则函数将删除value2中包含的所有前导或尾随字符或字节
因此,它查看的是字符列表,而不是字符序列
你真正想要的是:
选择REGEXP\u REPLACE0039040123456,^0039,我想,每个字符都有自己的计算结果?所以它修剪了前导0、3和9?0039040123456的来源是什么?如果来自列,那么该列的类型是什么?列类型是STRING。看了文档后,我猜这种行为是有意的。看看水果的例子。