3

IF/Else ステートメントを介して特定の値の渡された引数をテストし、最終的に結果を別のテーブルと交差させたいストアド プロシージャを作成しようとしています。動作しない疑似例として次のようなもの。

ALTER PROCEDURE [dbo].[Search]
    @Keyword nvarchar(MAX),
    @ClasificationId int
AS
BEGIN
    SET NOCOUNT ON;

    IF (@Keyword != null)
        SELECT * FROM Table WHERE [Keyword] LIKE @Keyword
    ELSE 
        SELECT * FROM Table 

    INTERSECT

    IF (@Classification != null)
        SELECT * FROM Table WHERE [ClassificationID] = @ClassificationId
    ELSE 
        SELECT * FROM Table 
END
4

2 に答える 2