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

如何在SQL中将日期转换为该日期所在周的周一日期?

简便实现方法

下面分两种常用场景给出简洁方案:

Excel 实现

假设原始日期在A列,在空白列(比如B列)输入以下公式,下拉填充即可得到对应周的周一日期:

=A2-WEEKDAY(A2,2)+1

公式说明:WEEKDAY(A2,2)会返回1(周一)到7(周日)的数字,用原日期减去这个数字再加1,就能得到当周的周一日期。之后将B列的计算结果复制,粘贴为数值替换原A列即可。

Python Pandas 实现

如果用代码处理,借助Pandas可以快速完成转换:

import pandas as pd

# 读取原始数据(假设是DataFrame格式)
df = pd.DataFrame({
    'Date': ['2022-10-03', '2022-10-04', '2022-10-09'],
    'Value': ['x', 'y', 'z']
})

# 将Date列转为日期类型
df['Date'] = pd.to_datetime(df['Date'])

# 计算对应周的周一:Pandas中周一对应weekday=0,减去对应天数即可
df['Date'] = df['Date'] - pd.to_timedelta(df['Date'].dt.weekday, unit='D')

print(df)

运行后就能得到目标格式的表格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 15:10:42