4.6 Checking Whether a String Contains a Substring
4.6.1 Problem
You want to know whether a given
string occurs within another string.
4.6.2 Solution
Use LOCATE( ).
4.6.3 Discussion
The LOCATE( ) function takes two arguments
representing the substring that you're looking for
and the string in which to look for it. The return value is the
position at which the substring occurs, or 0 if it's
not present. An optional third argument may be given to indicate the
position within the string at which to start looking.
mysql> SELECT name, LOCATE('in',name), LOCATE('in',name,3) FROM metal;
+----------+-------------------+---------------------+
| name | LOCATE('in',name) | LOCATE('in',name,3) |
+----------+-------------------+---------------------+
| copper | 0 | 0 |
| gold | 0 | 0 |
| iron | 0 | 0 |
| lead | 0 | 0 |
| mercury | 0 | 0 |
| platinum | 5 | 5 |
| silver | 0 | 0 |
| tin | 2 | 0 |
+----------+-------------------+---------------------+
LOCATE( ) is not
case sensitive as of MySQL 4.0.0, and is case sensitive before that.
|