RE: BUG #18218: NOT LIKE ANY returns same result as LIKE ANY when array items are wrapped into E'' - Mailing list pgsql-bugs

From Orlov Aleksej
Subject RE: BUG #18218: NOT LIKE ANY returns same result as LIKE ANY when array items are wrapped into E''
Date
Msg-id 8bd8a9eece0945c79b120dca149a1165@cft.ru
Whole thread Raw
In response to BUG #18218: NOT LIKE ANY returns same result as LIKE ANY when array items are wrapped into E''  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
Hi, Baurzhan!

I've checked the requests and here's what I think about it. 
There is no mistake here. 

Here's how I tested 

1. select 'TextToMatch' like E'Te\%tch' returns true.
2. select 'TextToMatch' like E'nomatch'  returns false. 
3. select 'TextToMatch' not like E'Te\%tch' returns false.
4. select 'TextToMatch' not like E'nomatch' returns true.

LIKE ANY 1, 2 equals true. 
LIKE NOT ANY 3, 4 equals true.  

Maybe you need to use NOT ALL?


>The following bug has been logged on the website:

>Bug reference:      18218
>Logged by:          Baurzhan Sakhariyev
>Email address:      baurzhansahariev@gmail.com
>PostgreSQL version: 15.0
>Operating system:   MacOS
>Description:        

>https://www.db-fiddle.com/f/cpNjWRLmQT6UFb2wEo2LoG/0

>select 'TextToMatch' like any (array[E'Te\%tch', E'nomatch']); -- true, correct select 'TextToMatch' NOT like any
(array[E'Te\%>tch',E'nomatch']); -- true but must be false because it's a negated version of the expression above
 

>Please note, that versions without E'' work as expected. 
>select 'TextToMatch' like any (array['Te\%tch', 'nomatch']); -- false select 'TextToMatch' NOT like any
(array['Te\%tch',>'nomatch']); -- true
 


pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #18218: NOT LIKE ANY returns same result as LIKE ANY when array items are wrapped into E''
Next
From: Tom Lane
Date:
Subject: Re: BUG #18218: NOT LIKE ANY returns same result as LIKE ANY when array items are wrapped into E''