Re: search/select case-insensitivly.

From: Andrew McMillan <andrew(at)catalyst(dot)net(dot)nz>
To: Zhidian Du <duzhidian(at)hotmail(dot)com>
Cc: pgsql-php(at)postgresql(dot)org
Subject: Re: search/select case-insensitivly.
Date: 2002-10-22 08:12:58
Message-ID: 1035274378.6376.105.camel@kant.mcmillan.net.nz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

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.
--
---------------------------------------------------------------------
Andrew @ Catalyst .Net.NZ Ltd, PO Box 11-053, Manners St, Wellington
WEB: http://catalyst.net.nz/ PHYS: Level 2, 150-154 Willis St
DDI: +64(4)916-7201 MOB: +64(21)635-694 OFFICE: +64(4)499-2267
Survey for free with http://survey.net.nz/
---------------------------------------------------------------------

In response to

Responses

Browse pgsql-php by date

  From Date Subject
Next Message Hervé Piedvache 2002-10-22 09:10:47 Re: search/select case-insensitivly.
Previous Message Roj Niyogi 2002-10-22 04:28:27 Re: search/select case-insensitivly.