Re: search/select case-insensitivly.

Поиск
Список
Период
Сортировка
От Hervé Piedvache
Тема Re: search/select case-insensitivly.
Дата
Msg-id 20021022091245.50B5641812@mailer.elma.fr
обсуждение исходный текст
Ответ на Re: search/select case-insensitivly.  (Andrew McMillan <andrew@catalyst.net.nz>)
Ответы Re: search/select case-insensitivly.  (Andrew McMillan <andrew@catalyst.net.nz>)
Re: search/select case-insensitivly.  (Maxim Maletsky <maxim@php.net>)
Список pgsql-php
The best way is to always save data in your database in the same format ...
upper or lower ... then create an index on your field classicaly ...

CREATE INDEX ix_name ON mytable(name);
SELECT name FROM mytable WHERE name = '" . strtolower($Name) ."';

You will ever use the index ... and it's simple to implement ...
You can also easily do an update of your database like :
update mytable set name=lower(name);
to get all the old data in the good format ...
Do not forget to vacuum the table after that !

Regards,

Le Mardi 22 Octobre 2002 10:12, Andrew McMillan a écrit :
> On Tue, 2002-10-22 at 17:01, Zhidian Du wrote:
> > I want a PHP program to search case-insensitivly.
> >
> > for example:
> > select Name from mytable where Name = '$Name';
> >
> >
> > Here $Name is what users' input maybe JOHN, john.  How to let it match
> > John in table and find that record?
>
> Although you can simply do as another poster said and use the ILIKE
> operator, there are a few things you may want to consider.
>
> You can also do something like:
>
> "SELECT name FROM mytable WHERE lower(name) = '" . strtolower($Name) .
> "'; "
>
> This means that PostgreSQL will use an index, if there is an index on
> lower(name):
>
> CREATE INDEX lcname ON mytable( lower(name) );
>
> This will give you the most efficient access if you have many records in
> 'mytable', whereas ILIKE will require a full-table scan.
>
> Regards,
>                     Andrew.

--
Hervé Piedvache

Elma Ingénierie Informatique
6 rue du Faubourg Saint-Honoré
F-75008 - Paris - France
Tel. 33-144949901
Fax. 33-144949902

В списке pgsql-php по дате отправления:

Предыдущее
От: Andrew McMillan
Дата:
Сообщение: Re: search/select case-insensitivly.
Следующее
От: Andrew McMillan
Дата:
Сообщение: Re: search/select case-insensitivly.