On Thu, Oct 13, 2022 at 02:28:23PM +0000, PG Doc comments form wrote:
> The following documentation comment has been logged on the website:
>
> Page: https://www.postgresql.org/docs/15/functions-conditional.html
> Description:
>
> Regarding:
> https://www.postgresql.org/docs/current/functions-conditional.html
>
> I ran into a situation where COALESCE was used like this
>
> ```
> SELECT * FROM table WHERE COALESCE(col_1, col_2, col_3) >= 5
> ```
>
> and didn't understand how it worked, and the examples don't really help
> because they only use COALESCE like
>
> ```
> SELECT COALESCE(..)
> ```
>
> I asked and answered a question on stackoverflow with a pretty good example
> of this, you could consider adding to your page.
>
> Thank you :))
>
> Stackoverflow question link:
>
https://stackoverflow.com/questions/74057319/coalesce-in-postgresql-conditional-displaying-seemingly-undocumented-behavior
I read the Stackoverflow thread and it seems you thought a column name
in the function in a WHERE clause should span all the rows looking for
the first non-NULL row, and only if they are all NULL, go to th next
parameter. All WHERE functions are row-based so I don't see how to
actually improve our doc text without making it more confusing. Sorry.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com
Indecision is a decision. Inaction is an action. Mark Batterson