
SQL dotaz
Dobrý den,
prosím o radu. Mám SQL dotaz, kterým chci vybrat osoby s příjmením začínajícím na A-K.
SELECT o.prijmeni
FROM osoba o
WHERE o.prijmeni SIMILAR TO '[A-K]%'
Problémem je, že PostgreSQL 9.6 vynechá příjmení začínající českým znakem (např.: Čermák) - to řadí až na konec abecedy.
Dá se někde nastavit aby klauzule "SIMILAR TO '[A-K]%'" počítala s českou abecedou?
Z dokumentace se mi to nějak nedaří vyčíst.
Předem díky
Pavel
tuším, že je potřeba použít COLLATE nebo NAMES a nebo něco jako natural něco (nemyslím natural join!). To collate se se může nastavit jako samostatný příkaz na začátku a nebo součástí dotazu (ke konci dotazu)
A rada, správnější by bylo pro operátor typu "Začíná na" než na obecný "vyhovuje patternu", aby bylo hledání rychlejší. I když si myslím, že moderní DB systémy by uměly vyhodnotit že pattern má charakter "začíná na" a interně "optimalizovat" zadaný operátor "vyhovuje patternu " na hledání "začíná na"