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

SQL Server中从名称提取日期并转为yyyy-mm-dd格式求助

解决日期格式转换(20221201 → 2022-12-01)

方案1:Python实现

提供两种常用方式,按需选择:

  • 切片拼接法(简单直接,适合确定格式合法的场景):
date_str = "20221201"
formatted_date = f"{date_str[:4]}-{date_str[4:6]}-{date_str[6:]}"
print(formatted_date)  # 输出:2022-12-01
  • datetime模块法(带合法性校验,避免无效日期):
from datetime import datetime

date_str = "20221201"
try:
    date_obj = datetime.strptime(date_str, "%Y%m%d")
    formatted_date = date_obj.strftime("%Y-%m-%d")
    print(formatted_date)  # 输出:2022-12-01
except ValueError:
    print("输入的日期格式不合法")

方案2:JavaScript实现

  • 字符串切片拼接:
const dateStr = "20221201";
const formattedDate = `${dateStr.slice(0,4)}-${dateStr.slice(4,6)}-${dateStr.slice(6)}`;
console.log(formattedDate); // 输出:2022-12-01
  • Date对象解析(自动处理日期合法性):
const dateStr = "20221201";
const year = dateStr.slice(0,4);
const month = parseInt(dateStr.slice(4,6)) - 1; // 注意JavaScript月份为0基
const day = dateStr.slice(6);
const dateObj = new Date(year, month, day);
const formattedDate = dateObj.toISOString().split('T')[0];
console.log(formattedDate); // 输出:2022-12-01

方案3:Excel公式实现

如果是在Excel中处理,可用以下两种公式:

  • TEXT函数一键格式化:
=TEXT(A1,"0000-00-00")
  • 字符串拼接法:
=LEFT(A1,4)&"-"&MID(A1,5,2)&"-"&RIGHT(A1,2)

内容的提问来源于stack exchange,提问作者user20152482

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 23:10:46