Re: ARRAY_LENGTH() function behavior with empty array

From: otar shavadze <oshavadze(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: ARRAY_LENGTH() function behavior with empty array
Date: 2016-12-02 15:35:03
Message-ID: CAG-jOyCN6LRL9UTfDwcwWG5Gfq8uX_OgD9K589FM8jG3fHqKjw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Understood, and backwards compatibility also of course. Thank you

On Fri, Dec 2, 2016 at 7:20 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> otar shavadze <oshavadze(at)gmail(dot)com> writes:
> > SELECT ARRAY_LENGTH('{}'::INT[], 1)
> > This returns NULL, not so "dangerous" either way, not would be more
> > logically, if array length function will return 0 from empty array,
> > instead of NULL ?
>
> Well, the issue is that you're asking about dimension 1 of a
> zero-dimensional array, so the answer is indeed undefined, not 0.
>
> A lot of people are not terribly happy with PG's array handling,
> but there's enough interconnectedness to the behaviors that it's
> hard to change just one thing ... and there's also backwards
> compatibility to worry about.
>
> regards, tom lane
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message cen 2016-12-02 15:49:12 Re: Full text search randomly not working for short prefixes?
Previous Message Tom Lane 2016-12-02 15:33:12 Re: Full text search randomly not working for short prefixes?