| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
| Cc: | Nikhil Benesch <nikhil(dot)benesch(at)gmail(dot)com>, "pgsql-generallists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: split_part for the last element |
| Date: | 2020-10-23 18:35:00 |
| Message-ID: | 222396.1603478100@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
"David G. Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> writes:
> On Fri, Oct 23, 2020 at 8:47 AM Nikhil Benesch <nikhil(dot)benesch(at)gmail(dot)com>
> wrote:
>> Is there another option I'm missing? Would there be interest in
>> extending split part so that negative indices counted from the end, as
>> in:
>> split_part('foo bar baz', ' ', -1) -> 'baz'
> I'm torn here because this would be the first usage of this concept in
> PostgreSQL (I think).
We already have some JSON functions that act like that, not to mention
the left() and right() string functions, so I don't see that much of an
argument against extending split_part to do it.
> Tangentially, I noticed that we have a "starts_with" function but no
> corresponding "end_with".
> It's been a while but there used to be a systemic inertia working
> against adding minor useful functions such as these.
Part of the reason for that bias is that these one-off functions tend
not to be very well thought out or complete :-(. The point that
could be raised here is why we have split_part but not any corresponding
regex-based splitter.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Nikhil Benesch | 2020-10-23 18:38:26 | Re: split_part for the last element |
| Previous Message | David G. Johnston | 2020-10-23 18:20:50 | Re: split_part for the last element |