Re: where match question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Németh Zoltán wrote:
On k, 2007-01-23 at 19:46 +1100, chris smith wrote:
On 1/23/07, Németh Zoltán <znemeth@xxxxxxxxxxxxxx> wrote:
On h, 2007-01-22 at 22:53 -0800, Jim Lucas wrote:
Don wrote:
I have a db field that contains zip codes separated by comas.

I am trying to get php to return all of the rows that contain a particular
zip code.



$query = "SELECT * FROM info WHERE MATCH (partialZIP) AGAINST ('$zip')";
try this

$query = "SELECT * FROM info WHERE column LIKE '{$zip}'";
I would use

$query = "SELECT * FROM info WHERE LOCATE('{$zip}', column) > 0";
And how are you going to index that? That's going to be extremely slow
as the size of the table grows.


well, yes.

better solution is to not store the zip codes in one field with commas,
but in a separate table which relates to this one. and then you could
use a query like

$query = "SELECT t1.*, t2.* FROM info t1, zips t2 WHERE t1.id=t2.infoid
AND t2.zip = '{$zip}'";

greets
Zoltán Németh

But, since the op is working with existing data, what is the performance difference between using LIKE or LOCATE?

Pro's vs. Con's

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux