0

IF-ELSE、または同様のものでこのようなことを行うことは可能ですか:

SELECT
MemberID,
ProfileTypeID
PrCountryID,    -- 3
PrStateID,      -- 4
PrStateInt
FROM Member
WHERE PrCity IS NOT NULL
IF @ShowUnclaimed = 'N'
    AND Claimed = 'Y'
    AND SBIcon = 'N'
END
AND Viewable = 'Y'
AND SystemID = 2

情報をお寄せいただきありがとうございます。

ネオジャキー

4

4 に答える 4

1

式を探していcaseます ( MSDN )

SELECT MemberID,
       ProfileTypeID
       PrCountryID,    -- 3
       PrStateID,      -- 4
       PrStateInt

FROM   Member

WHERE  PrCity IS NOT NULL
       AND CASE
               WHEN @ShowUnclaimed = 'N' AND Claimed = 'Y' AND SBIcon = 'N' THEN 1
           END = 1
       AND Viewable = 'Y'
       AND SystemID = 2
于 2013-02-14T23:33:34.783 に答える
0

これを試してみてくださいCASE

SELECT
    MemberID,
    ProfileTypeID
    PrCountryID,    -- 3
    PrStateID,      -- 4
    PrStateInt
FROM Member
WHERE PrCity IS NOT NULL
    AND Viewable = 'Y'
    AND SystemID = 2
    AND Claimed = CASE WHEN  @ShowUnclaimed = 'N' THEN 'Y' ELSE Claimed END
    AND SBIcon = CASE WHEN  @ShowUnclaimed = 'N' THEN 'N' ELSE SBIcon END

これは 1 つの方法にすぎません。幸運を祈ります。

于 2013-02-14T23:37:15.820 に答える