我试图SELECT
行基于两个值与此存储过程:不能转换日期时间为Int
ALTER PROCEDURE [dbo].[MYSelect]
-- Parameters with default values
@MitarbeiterId AS int,
@Wann AS datetime2(7)
AS
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT *
FROM [Plan]
WHERE RefMitarbeiterId = @MitarbeiterId
AND Jahr <= YEAR(@Wann)
AND Monat <= MONTH(@Wann)
AND Abgeschlossen = 0
的问题是以下部分:
AND Jahr <= YEAR(@Wann)
AND Monat <= MONTH(@Wann)
我不知道为什么这部分导致(语法)问题。包含这些行,使用MSSQL Studio,我收到一个错误unable to convert DateTime to Integer
。删除这些返回结果并且没有语法错误。我在其他地方使用YEAR()
和MONTH()
,所以我很困惑这里为什么会有问题。
这是Plan
表:
而且问题是什么? –