There's another ongoing thread about range types, which was great
because I wasn't familiar with the feature (guess it's new in 9.2?).
I run a recipe website and was looking for *exactly* this sort of
feature a few weeks ago when I was adding in support for ranges of
ingredients (such as "1-2tsp salt"). In the end, I implemented it
using two columns (QtyHigh and QtyLow). In the salt example, QtyHigh
would be 2 and QtyLow would be 1. I also have some CHECK constraints
to make sure high is always higher, and they're not the same, and not
negative or anything.
Now, for 99% of the ingredients, QtyHigh would have a value and QtyLow
would just be null. For example, "2tsp salt" would have a QtyHigh of
2 and a QtyLow of null, which would indicate there is no range.
I'm curious if I could combine these columns into one using a RANGE
type. Obviously, if the column only stored ranges, it would be easy.
However, can a range also be one-dimensional? Can I have a High value
and no low value? Or would the recommended design be to have high/low
be the same? Overall, would this scenario be an appropriate use case
for this RANGE type, since only some of the data are ranges?
BONUS Question:
How are RANGE types represented in Npgsql, or are they even supported yet?
Mike