Re: BUG #17676: Text comparison appears to be wrong

Поиск
Список
Период
Сортировка
От David G. Johnston
Тема Re: BUG #17676: Text comparison appears to be wrong
Дата
Msg-id CAKFQuwYXiXeWq6=MWbM2Hm8i1v95c1mrkbNYeaCw0o2tQdeuHQ@mail.gmail.com
обсуждение исходный текст
Ответ на BUG #17676: Text comparison appears to be wrong  (PG Bug reporting form <noreply@postgresql.org>)
Список pgsql-bugs
On Thu, Nov 3, 2022 at 12:56 PM PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      17676
Logged by:          Rob Johnson
Email address:      robj@hightouchinc.com
PostgreSQL version: 14.5
Operating system:   Ubuntu
Description:       

No tables are needed.  Just ran this, comparing strings with lower-case 'x'
and period '.' characters.  The first two columns are false as expected, the
last column is true, which appears to be wrong.

=> select '.' > 'x' as first, '.x' > 'x.' as second, '.xx' > 'x..' as third;

                                                List of databases
  Name   |  Owner   | Encoding |   Collate   |    Ctype    | Access
privileges | Size  | Tablespace | Description
---------+----------+----------+-------------+-------------+-------------------+-------+------------+-------------
 nigeldb | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |               
  | 48 MB | pg_default |


Not a bug.

This just seems to be how UTF-8 Collation works; punctuation produces non-obvious sorting outcomes.

https://superuser.com/questions/227925/in-utf-8-collation-why-11-is-less-then-1

I confirmed that explicitly adding COLLATE "C" produces the expected outcome for third.
 
David J.

В списке pgsql-bugs по дате отправления:

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #17676: Text comparison appears to be wrong
Следующее
От: Vik Fearing
Дата:
Сообщение: Wrong result with constant quals