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

如何将年份与月份合并为格式为YYYYMM的单列?

合并年份与月份为YYYYMM格式的实现方法

嘿,这个需求太常见啦!我给你整理了几种主流工具下的解决方案,你挑自己在用的就行:

Excel/Google Sheets 解法

最直观的是用TEXT函数把月份补上前导零,再和年份拼接。假设年份在A列,月份在B列,在C2单元格输入:

=A2&TEXT(B2,"00")

下拉填充就能得到所有行的YYYYMM格式结果啦。

  • 原理:TEXT(B2,"00")会把单个数字的月份(比如7)转换成07,两位数字的月份(比如10)保持不变,再和年份直接拼接成字符串。
  • 要是你的Excel版本不支持TEXT函数(很少见),可以用RIGHT函数替代:
    =A2&RIGHT("00"&B2,2)
    

Python Pandas 解法

假设你的数据存在DataFramedf中,包含Year(整数型)和Month(整数型)列,一行代码就能搞定:

df['YYYYMM'] = df['Year'].astype(str) + df['Month'].astype(str).str.zfill(2)
  • 步骤拆解:
    1. 把Year列转为字符串类型;
    2. 把Month列转为字符串后,用str.zfill(2)给单个数字的月份补前导零;
    3. 直接拼接两列得到YYYYMM格式的新列。

SQL 解法

不同数据库的函数略有差异,我给你列几个常用的:

MySQL/MariaDB

SELECT 
  CONCAT(Year, LPAD(Month, 2, '0')) AS YYYYMM
FROM your_table;
  • LPAD(Month, 2, '0')的作用是把月份字段补成两位,不足的地方用0填充。

SQL Server

SELECT 
  CAST(Year AS VARCHAR) + RIGHT('00' + CAST(Month AS VARCHAR), 2) AS YYYYMM
FROM your_table;
  • 先把月份转为字符串,和00拼接后取最后两位,保证是两位格式。

PostgreSQL

用日期函数更优雅:

SELECT 
  TO_CHAR(MAKE_DATE(Year, Month, 1), 'YYYYMM') AS YYYYMM
FROM your_table;
  • MAKE_DATE先把年、月、日(这里随便选1号)拼成日期,再用TO_CHAR格式化为YYYYMM字符串。

要是你用的是其他工具(比如R、Power Query之类的),随时说,我再给你适配解法~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 03:07:50