首页 > 解决方案 > eomonth 操作数类型冲突(消息 2016)

问题描述

DECLARE @DateMin AS date = DATEFROMPARTS(2019, 7, 19);
DECLARE @DateTimeMax AS datetime = EOMONTH(@DateMin)+1;

错误信息:

消息 2016,级别 16。
操作数类型冲突。日期与 int 不兼容。

第二行发生错误。使用 SQL Server 2016。

标签: sqlsql-serverdatetime-format

解决方案


该错误告诉您问题所在,date并且int不兼容。使用DATEADD

DECLARE @DateMin AS date = DATEFROMPARTS(2019, 7, 19);
DECLARE @DateTimeMax AS datetime = DATEADD(DAY, 1, EOMONTH(@DateMin));

推荐阅读