Curso de MySQL
Consultas, lista de correo 'C++ Con Clase' 'MySQL Con Clase' página de entrada Tabla de contenido Contactar con Webmaster
Curso Sentencias Funciones API C

SQL

Funciones

Matemáticas Tiempo Cadena Conversión Control de Flujo Encriptado Información Genéricas DEFAULT FORMAT GET_LOCK INET_ATON INET_NTOA IS_FREE_LOCK IS_USED_LOCK MASTER_POS_WAIT RELEASE_LOCK UUID GROUP BY

LOCATE()
POSITION()

LOCATE(substr,str)  
LOCATE(substr,str,pos)
POSITION(substr IN str)

La primera forma devuelve la posición de la primer aparición de la cadena substr dentro de la cadena str. La segunda devuelve la posición de la primera aparición de la cadena substr dentro de la cadena str, comenzando en la posición pos. Devuelve 0 si substr no está en str.

mysql> SELECT LOCATE('bar', 'foobarbar');
+----------------------------+
| LOCATE('bar', 'foobarbar') |
+----------------------------+
|                          4 |
+----------------------------+
1 row in set (0.00 sec)

mysql> SELECT LOCATE('xbar', 'foobar');
+--------------------------+
| LOCATE('xbar', 'foobar') |
+--------------------------+
|                        0 |
+--------------------------+
1 row in set (0.00 sec)

mysql> SELECT LOCATE('bar', 'foobarbar',5);
+------------------------------+
| LOCATE('bar', 'foobarbar',5) |
+------------------------------+
|                            7 |
+------------------------------+
1 row in set (0.00 sec)

Esta función es segura con cadenas multibyte. En MySQL 3.23 esta función distingue entre mayúsculas y minúsculas, en la versión 4.0 sólo si cualquiera de los argumentos es una cadena binaria.

POSITION(substr IN str) es sinónimo de LOCATE(substr,str).