Re: [pgsql-advocacy] interesting PHP/MySQL thread
От | Lincoln Yeoh |
---|---|
Тема | Re: [pgsql-advocacy] interesting PHP/MySQL thread |
Дата | |
Msg-id | 5.2.1.1.1.20030623221452.02f7fd48@mbox.jaring.my обсуждение исходный текст |
Ответ на | Re: [pgsql-advocacy] interesting PHP/MySQL thread (nolan@celery.tssi.com) |
Ответы |
Re: [pgsql-advocacy] interesting PHP/MySQL thread
|
Список | pgsql-general |
At 12:33 AM 6/23/2003 -0500, nolan@celery.tssi.com wrote: > > > > Oh, you mean like "SELECT * FROM table WHERE field ~* 'nolan';"? > >No, I mean as in "SELECT * FROM table WHERE field = 'nolan';" > >That will match values with any combination of upper and lower case >letters that fold to 'nolan': 'Nolan', 'NOLAN', etc. For me that's a matter of taste. I prefer to use = for case sensitive and lower(field)=lower('data') for case insensitive. I wonder if there is a difference between using lower vs upper for case insensitivity but I've never bothered to look deeply into it. >Also, unlike PostgreSQL (at least in 7.3), if you define an index on >the column, mysql appears to use it for LIKE queries. > > "SELECT * FROM table WHERE field LIKE 'nolan%';" > >is very fast in mysql but not in 7.3, and even non-anchored LIKE searches >in mysql appear to be using the index. The versions of Postgresql I've used since I can remember (e.g. at least v6.5.3 some years ago) use indexes for anchored LIKE searches. I vaguely recall some people having this "not using index" behaviour when they are using various locales. > "SELECT * FROM table WHERE field LIKE '%nolan%';" > >executes considerably faster with an index on field than without one. I think MySQL wins in this one. Just wondering how they do it. And whether it's a good idea to do it that way. Regards, Link.
В списке pgsql-general по дате отправления: