Re: Review: listagg aggregate
От | Pavel Stehule |
---|---|
Тема | Re: Review: listagg aggregate |
Дата | |
Msg-id | 162867791001280912g7fde68b0l9fecfa77cd81c3c2@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Review: listagg aggregate (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: Review: listagg aggregate
|
Список | pgsql-hackers |
2010/1/28 Robert Haas <robertmhaas@gmail.com>: > On Thu, Jan 28, 2010 at 10:56 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> Robert Haas <robertmhaas@gmail.com> writes: >>> On Thu, Jan 28, 2010 at 9:01 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote: >>>> simplest could not be a best. There have to be only a const >>>> expression. But we have not possibility to check it in pg. >> >>> Well... that's an entirely arbitrary limitation. I admit that it >>> doesn't seem likely that someone would want to have a variable >>> delimiter, but putting extra effort and code complexity into >>> preventing it seems pointless. >> >> Yeah. The real issue here is that in some cases you'd like to have >> non-aggregated parameters to an aggregate, but SQL has no notation >> to express that. > > Right. > >> I think Pavel's underlying complaint is that if the delimiter >> argument isn't constant, then we're exposing an implementation >> dependency in terms of just which values get separated by which >> delimiters. The most practical implementation seems to be that >> the first-call delimiter isn't actually used at all, and on >> subsequent calls the delimiter *precedes* the associated value, >> which is a bit surprising given the order in which one writes >> them. Not sure if this is worth documenting though. Those two >> or three people who actually try it will figure it out soon enough. > ok - there is one query, in 99.99% the second argument will be a constant. Can we use this information and optimize function for this case? The detoast on every row can take some percent from a performance. Pavel > Yeah, I'm thoroughly unworried about it. > > ...Robert >
В списке pgsql-hackers по дате отправления: