私はこのストアドプロシージャを持っています
ALTER PROCEDURE [dbo].[usp_mySP]
-- Add the parameters for the stored procedure here
-- For inventory table check.
@DealerID VARCHAR(50),
@Certified VARCHAR(50) = NULL,
-- For fuel value.
@CityFeatureValue VARCHAR(50),
@HwyFeatureValue VARCHAR(50)
AS
BEGIN
BEGIN
SELECT InventoryID,
VIN
FROM Inventory
WHERE DealerID = @DealerID
AND Deleted = 'False'
AND (IsPending = '0' OR IsPending IS NULL)
--AND (Certified = @Certified OR @Certified IS NULL)
AND VIN IN
(
SELECT VIN
FROM FuelPerformance
WHERE (
FeatureTitle = 'Fuel Economy (City)'
AND FeatureValue = @CityFeatureValue
)
OR
(
FeatureTitle = 'Fuel Economy (Hwy)'
AND FeatureValue = @HwyFeatureValue
)
GROUP BY VIN
HAVING COUNT(VIN) > 1
)
END
END
私はそれを次のように呼んでいます:
EXEC usp_ListOfVehiclesOnFuelCondition_ForSingleDealer
'09f5245d' , '', '18', '28'
行にコメントしているとき
AND (Certified = @Certified OR @Certified IS NULL)
結果が得られますが、この行がある場合、結果は空白になります。
私が間違っている提案はありますか?