From: | Stéphane BUNEL <stephane(at)bpf(dot)st> |
---|---|
To: | Laurent ROCHE <laurent_roche(at)yahoo(dot)com> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Ignorer la casse |
Date: | 2007-08-17 10:19:18 |
Message-ID: | 46C57626.4010408@bpf.st |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Laurent ROCHE a écrit :
> Bonjour,
>
> J'ai cherché mais je n'ai rien trouvé dans ce sens.
>
> Existe-t'il un mode dans lequel un serveur PG ignorerait la casse des lettres ?
> Ceci afin d'éviter de devoir écrire mes requètes de la manière suivante (pour rechercher les noms contenant la chaîne polo):
> SELECT *
> FROM my_table
> WHERE lower(tb_name) LIKE '%polo%'
>
> Car je suppose que cette requète n'utilisera pas l'index sur tb_name.
Sauf si vous avez penser à créer un index fonctionnel :
http://stephane.bpf.st/si/bdd/pg/fnctidx
Attention à la conversion effectuée par lower() selon les configurations
elle ne sait pas toujours convertir correctement les diacritiques.
Une autre solution consiste à prévoir deux colonnes : tb_fullname
contenant le nom tel qu'entré par l'utilisateur et une colonne tb_name
contenant une version en minuscule et sans diacritique.
Stéphane BUNEL.
>
> Pour info, on a les définition suivantes :
> CREATE TABLE my_table
> (
> tb_id serial NOT NULL,
> tb_name character(100) NOT NULL,
> CONSTRAINT my_table_pkey PRIMARY KEY (tb_id)
> ) ;
>
> CREATE INDEX idx_tb_name
> ON my_table
> USING btree
> (tb_name);
>
>
>
>
> Have fun,
> L(at)u
> The Computing Froggy
>
>
>
>
> _____________________________________________________________________________
> Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
From | Date | Subject | |
---|---|---|---|
Next Message | David Boccou | 2007-08-17 11:31:44 | Re: Ignorer la casse |
Previous Message | Jean-Paul Argudo | 2007-08-17 10:02:05 | Re: Ignorer la casse |