• Hi John,

    So far i have this.

    DECLARE @CarName nvarchar(max)

    DECLARE @carage int

    DECLARE @TyreId int

    DEclare @TyreType int

    DECLARE @Zipcode int

    SET @TyreId = 65

    SET @CarName = 'CITROEN'

    SET @carage = 2002

    SET @Zipcode = 2770

    SELECT

    [TyreId]

    ,[CarId]

    ,[RegionsNr]

    ,[CarAgeGroup]

    FROM [dbo].[Partner_Campaigns]

    WHERE

    (

    TyreId = (

    CASE

    WHEN NOT(TyreId) IS NULL THEN @TyreId

    ELSE NULL

    END

    )

    OR

    CarId = (

    CASE

    WHEN NOT(CarId) IS NULL THEN (SELECT id FROM Partner_CarModels WHERE Make like '%' + @CarName + '%')

    ELSE NULL

    END

    )

    OR

    RegionsNr = (

    CASE

    WHEN NOT(RegionsNr) IS NULL THEN (SELECT DISTINCT(Regionsnr) FROM Partner_Regioner_Kommuner_Postnr WHERE Postnr=@Zipcode)

    ELSE NULL

    END

    )

    OR

    CarAgeGroup = (

    CASE

    WHEN NOT(CarAgeGroup) IS NULL THEN

    isnull((

    CASE

    WHEN (YEAR(GETDATE()) - CAST(@CarAge AS Int)) < 6 THEN 1

    WHEN (YEAR(GETDATE()) - CAST(@CarAge AS Int)) > 5 THEN 2

    ELSE 0

    END

    ),

    NULL

    )

    ELSE NULL

    END

    )

    )