Les caractères sont comparés à l'aide d'un classement. Vous pouvez utiliser la commande SQL
SHOW lc_collate;
pour voir quel est votre classement par défaut.
PostgreSQL utilise les classements du système d'exploitation, donc le résultat d'une comparaison dépendra souvent du système d'exploitation.
Pour forcer la comparaison ASCII par octet, utilisez le classement C
test=> SELECT 'a X' COLLATE "C" < 'a-';
?column?
----------
t
(1 row)
ou les opérateurs de comparaison par octet
test=> SELECT 'a X' ~<~ 'a-';
?column?
----------
t
(1 row)