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/ ---------------------------------------------------------------------