Re: Range types
От | Tom Lane |
---|---|
Тема | Re: Range types |
Дата | |
Msg-id | 11309.1260814882@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Range types (Nathan Boley <npboley@gmail.com>) |
Список | pgsql-hackers |
Nathan Boley <npboley@gmail.com> writes: >> This statement seems to me to demonstrate that you don't actually >> understand the concept of open and closed ranges. > IMHO the first question is whether, for integers, [1,2] UNION [3,5] > should be equal to [1,5]. In math this is certainly true, and defining > 'next' seems like a reasonable way to establish this in postgres. Well, that's nice to have (not essential) for data types that actually are discrete. It's not a sufficient argument for creating a definition that is flat out broken for non-discrete datatypes. It might be worth pointing out here that the concept of an open interval was only invented in the first place for dealing with a continuum. If you could assume the underlying set is discrete, every open interval could be replaced with a closed one, using the next or prior value as the bound instead. There would be no need for two kinds of interval. If you are intending to support UNION on intervals, you are going to need some more-general representation anyway. (I trust you don't think we will accept a datatype for which [1,2] UNION [3,5] works but [1,2] UNION [4,5] throws an error.) So whether the code can reduce the result of a union to a single range or has to keep it as two ranges is only an internal optimization issue anyhow, not something that should drive an artificial (and infeasible) attempt to force every domain to be discrete. regards, tom lane
В списке pgsql-hackers по дате отправления: