Jump to content


Photo

question regarding the like statement


  • Please log in to reply
1 reply to this topic

#1 stone.cold.steve.austin

stone.cold.steve.austin
  • New Members
  • Pip
  • Newbie
  • 7 posts

Posted 19 August 2006 - 09:10 PM

Hi,
Suppse I have a column in my database called Description with the the following rows in the coumn:

I am an artist
I am an art teacher

and i want to check to see if any of the rows in that column contain the word "art" - art as its own word, not as part of a word.

so i use this peiece of code to find the records that have art and print them to the page:

$query = "select Description from TableName where (Description like '%art%')";
while ($row = @mysql_fetch_array($query , MYSQL_ASSOC)) {
  print $row{'Description'} . "<br>";
}

however the above code with the like statement returns both the records, where as I only want to return the second record that has "art" - as its a match for a whole word in that row, not as part of a word (ie. the like statement sees "art" as a match with "artist", but i dont want it too.

am i making sense? if so, can the above code be modified too do what i want.

thanks
Richard


#2 fenway

fenway
  • Staff Alumni
  • MySQL Si-Fu / PHP Resident Alien
  • 16,199 posts
  • LocationToronto, ON

Posted 20 August 2006 - 12:08 AM

Well, you can use a REGEXP match, and add word boundaries.
Seriously... if people don't start reading this before posting, I'm going to consider not answering at all.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users