获取相差月份

image.pngimage.png想获得P_S_DATE与生产日期之间相差了几个月份,大佬们这个SQL要怎么写呀

image.png显示标识符无效是不能用这个函数吗

FineReport 嘘.. 发布于 2024-7-10 09:31 (编辑于 2024-7-10 09:44)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
1
华莉星宸Lv7资深互助
发布于2024-7-10 09:31(编辑于 2024-7-10 09:32)

什么数据库?

--------------------------

DATESUBDATE-日期时间差 https://help.fanruan.com/finebi/doc-view-1411.html

  • 嘘.. 嘘..(提问者) MYSQL数据库,不知道是不是日期格式的问题一直提示我的SQL不对
    2024-07-10 09:33 
  • 华莉星宸 华莉星宸 回复 嘘..(提问者) 这个函数计算,SELECT DATEDIFF('2023-09-22', '2023-09-20') AS day_diff; 或是 TIMESTAMPDIFF(unit,begin,end):计算两个DATE或DATETIME值之间的差值.TIMESTAMPDIFF函数允许其参数具有混合类型,例如,begin是DATE值,end可以是DATETIME值。 如果使用DATE值,则TIMESTAMPDIFF函数将其视为时间部分为“00:00:00”的DATETIME值 unit参数是确定(end-begin)的结果的单位,表示为整数。 以下是有效单位: MICROSECOND SECOND MINUTE HOUR DAY WEEK MONTH QUARTER YEAR
    2024-07-10 09:35 
  • 华莉星宸 华莉星宸 回复 嘘..(提问者) 你这是oracle数据库啊···参考文档·https://blog.csdn.net/wujiaqi168/article/details/40989487/
    2024-07-10 09:49 
最佳回答
1
年年plusLv5中级互助
发布于2024-7-10 09:52

数据库里用帆软公式要带$

例如  ${DATEDIF("2024/5/01","2024/6/07","M")}

最佳回答
0
snrtuemcLv8专家互助
发布于2024-7-10 09:32

DATEDIF(start_date,end_date,unit,method):返回两个指定日期间的天数、月数或年数。

Start_date:代表所指定时间段的初始日期。

End_date:代表所指定时间段的终止日期。

Unit:函数返回信息的类型。

method:可选参数,默认返回日期差值的绝对值。

若unit="Y",则DATEDIF返回指定时间段的年差数。

若unit="M",则DATEDIF返回指定时间段的月差数。

若unit="D",则DATEDIF返回指定时间段的日差数。

若unit="MD",则DATEDIF忽略年和月,返回指定时间段的日差数。

若unit="YM",则DATEDIF忽略年和日,返回指定时间段的月差数。

若unit="YD",则DATEDIF忽略年,返回指定时间段的日差数。

若method=1,则DATEDIF返回日期差值的绝对值。

若method=-1,则DATEDIF返回日期差值时,会考虑正负情况。

示例:

DATEDIF("2001/2/28","2004/3/20","Y")等于3,即在2001年2月28日与2004年3月20日之间有3个整年。

DATEDIF("2001/2/28","2004/3/20","M")等于37,即在2001年2月28日与2004年3月20日之间有36个整月。

DATEDIF("2001/2/28","2004/3/20","D")等于1116,即在2001年2月28日与2004年3月20日之间有1116个整天。

DATEDIF("2001/2/28","2004/3/20","MD")等于8,即忽略月和年后,2001年2月28日与2004年3月20日的差为8天。

DATEDIF("2001/1/28","2004/3/20","YM")等于2,即忽略日和年后,2001年1月28日与2004年3月20日的差为2个月。

DATEDIF("2001/2/28","2004/3/20","YD")等于21,即忽略年后,2001年2月28日与2004年3月20日的差为21天。

  • 嘘.. 嘘..(提问者) 这个我知道,但是日期格式好像有问题,一直报错
    2024-07-10 09:34 
  • snrtuemc snrtuemc 回复 嘘..(提问者) 可以format下,成标准格式 DATEDIF(format(A1,"yyyy-MM-dd"),format(B1,"yyyy-MM-dd"),"YM")
    2024-07-10 09:36 
  • 4关注人数
  • 188浏览人数
  • 最后回答于:2024-7-10 09:52
    请选择关闭问题的原因
    确定 取消
    返回顶部