You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Google Sheets Query函数将字符串转为标准日期格式

在Google Sheets中用Query函数统一多种字符串日期格式

问题场景

原始数据:

Column AColumn B
12022-11-17T13:41:47.431Z
32022-11-10T21:42:06-03:00
32022-11-10 22:01:00

需要转换为统一的yyyy-MM-dd HH:mm:ss格式:

Column AColumn B
12022-11-17 13:41:47
32022-11-10 21:42:06
32022-11-10 22:01:00

解决方案

通过Query函数结合日期解析、格式化函数实现,核心是先将不同格式的字符串日期转为Sheets可识别的日期值,再统一输出样式。

基础兼容公式

假设数据在A:B区域,在空白单元格输入以下公式:

=QUERY(
  ARRAYFORMULA(
    {
      A:A,
      IF(
        ISBLANK(B:B),
        "",
        TEXT(TO_DATE(VALUE(SUBSTITUTE(SUBSTITUTE(B:B, "T", " "), "Z", ""))), "yyyy-MM-dd HH:mm:ss")
      )
    }
  ),
  "SELECT Col1, Col2 WHERE Col1 IS NOT NULL",
  1
)

公式拆解

  • SUBSTITUTE:将日期字符串中的T替换为空格、Z替换为空,统一基础格式;
  • VALUE:把处理后的字符串转为数值(Sheets中日期本质是数值);
  • TO_DATE:将数值转换为标准日期格式;
  • TEXT:将日期格式化为目标样式;
  • ARRAYFORMULA:让公式作用于整列数据;
  • QUERY:筛选非空行,返回整理后的两列内容。

时区兼容优化写法

针对带时区偏移的日期(如2022-11-10T21:42:06-03:00),用PARSE_DATE精准解析:

=QUERY(
  ARRAYFORMULA(
    {
      A:A,
      IF(
        ISBLANK(B:B),
        "",
        TEXT(PARSE_DATE("yyyy-MM-dd'T'HH:mm:ssXXX", B:B), "yyyy-MM-dd HH:mm:ss")
      )
    }
  ),
  "SELECT Col1, Col2 WHERE Col1 IS NOT NULL",
  1
)

PARSE_DATE的格式参数"yyyy-MM-dd'T'HH:mm:ssXXX"可匹配带时区的ISO标准日期,自动转换为正确的日期值后再格式化。


内容的提问来源于stack exchange,提问作者Bruno - Growth Sales

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 20:25:18