From: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
---|---|
To: | Halil İbrahim AYHAN <ibrahimayhan(at)hotmail(dot)com(dot)tr>, "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org> |
Subject: | Re: PostgreSQL Windows Turkish Search Problem |
Date: | 2025-09-11 13:24:40 |
Message-ID: | e9427abbe32a10733eb9451fa466e4a591531a27.camel@cybertec.at |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On Thu, 2025-09-11 at 07:42 +0000, Halil İbrahim AYHAN wrote:
> I am using PostgreSQL Windows version as Turkish Collation
> The table contains the record "ŞİLİ" and "şili",
> When I Search with ILike, It Does Not Perform Case-Insensitive Searches,
> When I search with uppercase letters, I get 1 result, and when I search with lowercase letters, I get 1 result.
> There is no problem with Turkish Collection in Linux Version and 2 results are given.
> This problem occurs in Windows version.
There is a lack of SQL statements in your report, but I assume
this is either a user error or a shortcoming of the Windows
C library, both of which are not under our control.
Try like this:
CREATE COLLATION turkish_ci (
PROVIDER = icu,
DETERMINISTIC = FALSE,
LOCALE = 'tr-TR(at)colStrength=level2'
);
CREATE TABLE tr (st text COLLATE turkish_ci);
INSERT INTO tr VALUES ('ŞİLİ'), ('şili');
SELECT * FROM tr WHERE st = 'şili';
st
══════
ŞİLİ
şili
(2 rows)
You could also define the column with a different collation and
add the COLLATE clause in the query.
Yours,
Laurenz Albe
From | Date | Subject | |
---|---|---|---|
Next Message | Andrey Teplitskiy | 2025-09-11 14:34:13 | Re: BUG #18760: ../doc/src/sgml/postgres.sgml:24: element book: validity error : No declaration for attribute id of |
Previous Message | PG Bug reporting form | 2025-09-11 13:23:05 | BUG #19050: psql: could not find digest for NID UNDEF |