casting between range types
От | Jeff Davis |
---|---|
Тема | casting between range types |
Дата | |
Msg-id | 1314771295.21429.20.camel@jdavis обсуждение исходный текст |
Ответы |
Re: casting between range types
|
Список | pgsql-hackers |
At one point, the question of casting between range types came up. At first, this seemed like a fairly reasonable suggestion, but now I don't think I like the semantics. A normal cast changes between essentially equivalent values in different domains. For instance 3 as an int4 is equivalent to 3.0 as a numeric. However, if we take the simple approach with range types and cast the bounds, we end up with some weird situations. First, a range is really a set. So if we take '[1,10)'::int4range and cast that to numrange, we end up moving from a set of exactly 9 elements to a set of an infinite number of elements. Going the other way is probably worse. Sometimes casts are a bit "lossy" and I suppose we could write that off. But things get weirder when the total order is different (e.g. different text collations). Then you end up with a completely different set of values, which doesn't sound like a cast to me at all. So, I'm leaning toward just not providing any casts from one range type to another. Thoughts? RegardsJeff Davis
В списке pgsql-hackers по дате отправления: