Rob,
> Perhaps a trade off between nullable fields and redundant types. If
> your original table simply had a nullable column called
> isReplacementFor, into which you place in the subsequent rows the id of
> the first instance found.
Am I misunderstanding you when you're suggesting a table like:
part_number INTEGER
is_replacement_for INTEGER references part_number
value INTEGER
wattage FLOAT8
...
-- Gary Chambers