0

今日の日が日付のリストにあるかどうかに応じて、値 0 または 1 を返すことができるストアド プロシージャを作成したいと思います。私はこのようなことをしました:

USE [Alt_db]
GO
/****** Object:  StoredProcedure [dbo].[usp_ys]    Script Date: 09/05/2012 14:21:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE  PROCEDURE [dbo].[usp_Is_Holyday]
@Value varchar(50),
@Result bit OUTPUT
AS
Begin
If exists (select 1 from Holyday_Date where ISOCNTRYDESC=@Value and Holiday = CURDATE())
set @Result=1
Else
set @Result=0
End

しかし、エラー構文があります。

あなたはなにか考えはありますか ?

ありがとう

4

1 に答える 1

2

SQL Serverの場合は、次を試してください。

Holiday = getdate()

または、日付部分のみ:

cast(Holiday as date) = cast(getdate() as date)

SQL Server 2005以前の場合は、次を使用します。

dateadd(day, 0, datediff(day, 0, Holiday)) = 
    dateadd(day, 0, datediff(day, 0, getdate()))
于 2012-09-05T13:10:51.767 に答える