• What is the following parts of your query supposed to be checking?

    WHERE @category = 'hardware'

    AND @series = '1500'

    AND @diameter = '5"'

    AND @type = 'caster'

    @category is a variable, which I am assuming is set somewhere above the code you showed us. This part of each query is not checking anything in the table, and if you have done the following:

    DECLARE @category char(8);

    SET @category = 'hardware';

    Then, that criteria will be true for every single row. I think what you really wanted was something like:

    WHERE category = @category

    AND series = @series

    AND diameter = @diameter

    AND type = @type

    ...

    Change the columns to the actual column names in your query.

    Jeffrey Williams
    “We are all faced with a series of great opportunities brilliantly disguised as impossible situations.”

    ― Charles R. Swindoll

    How to post questions to get better answers faster
    Managing Transaction Logs