Left Outer Join with Missing Records
===

I'm selecting data from several tables, but the main idea is that a product may or may not have a discount record associated with it, as either a percent off or dollar off amount. I'm using a left outer join (which may be incorrect) and am getting back the same values for dollar and percent values, regardless as to whether or not the records exist.

The query looks something like:

    SELECT Items.ItemID, Items.name, Items.price, 
           ItemDiscounts.percentOff, ItemDiscounts.dollarOff, 
           ItemAttributes.ColorName
    FROM Items, ItemAttributes
    LEFT OUTER JOIN ItemDiscounts
      ON ItemDiscounts.ItemID = ItemID
      AND (
        ItemDiscounts.percentOff > 0
        OR ItemDiscounts.dollarOff > 0
      )
    WHERE Items.ItemID = ItemAttributes.ItemID


The weird part is that in all results, `percentOff` returns "1", and `dollarOff` returns "0", regardless if each item has it's own associated discount record. For spits, I changed `ItemDiscounts.percentOff > 0` to `ItemDiscounts.percentOff > 1`, then `dollarAmount` changed to all 2's and `percentOff` was all 0's. 

I'm somewhat baffled on this, so any help would be appreciated. 