Hi. I have some data in my database that is a string representation of integers (mostly, there are some alphabetic characters here and there). I want to query this field using postgres’ collation, specifically I want to use
create collation numeric (provider = icu, locale = 'en-u-kn-true'); select '20' between '10' and '100' collate numeric;
and I expect to get true. But I get false instead. This seems to contradict the postgres documentation
CREATE COLLATION numeric (provider = icu, locale = 'en-u-kn-true');
CREATE COLLATION numeric (provider = icu, locale = 'en@colNumeric=yes');
Numeric ordering, sorts sequences of digits by their numeric value, for example:
A-123(also known as natural sort).
It seems that icu support is present because I can see icu entries when I run
select * from pg_collation;
Running the same code locally and within github actions works. Render seems to be the odd man out, but I’m open to the possibility that I’m missing something.