Elementos

Elementos MySQL
Operativa
Para interactuar con el sistema se envían las consultas sql al analizador de consultas este separa la consulta en parte y analiza la expresión regular
Sintaxis:
| Tipo de Operador |
Ejemplos |
Descripción |
|
Caracteres Literales.
Coincidencia exacta
|
a A y 6 % @ |
Caracteres, Digitos y algunos caracteres especiales que coincidan exactamente |
| \$ \^ \+ \\ \? |
Precedencia de un carácter especial con \ para cancelar su significado como expresion regular |
| \n \t \r |
Nueva linea, tabulador o enter |
| \cJ \cG |
Codigos de Control |
| \xa3 |
Codigos hexadecimales para cualquier carácter. |
|
Anclajes
|
^ |
El campo empieza por |
| $ |
El campo acaba por |
| [[:<:]] |
La palabra empieza por |
| [[:>:]] |
La palabra acaba por |
|
Grupos de caracteres, cualquier carácter del grupo
|
[aAeEiou] |
Cualquier carácter contenido en [] |
| [^aAeEiou] |
Cualquier carácter excepto los contenidos en [] |
| [a-fA-F0-9] |
Cualquier carácter hexadecimal (0 a 9 o a hasta f) |
| . |
Cualquier caracter |
| [[:space:]] |
Cualquier carácter separador (espacio \n \r o \t) |
| [[:alnum:]] |
Cualquier carácter alfanumerico |
|
Contadores, actuan sobre elementos previos
|
+ |
1 o mas |
| * |
0 o mas |
| ? |
0 o 1 |
| {4} |
Exactamente 4 |
| {4,} |
4 o mas |
| {4,8} |
Entre 4 y 8 |
| Añadir una ? Después de cualquier contador para convertirlo |
| Alternación |
| |
o |
| Agrupamiento |
() |
Grupo para contar y guardar la variable |
Ejemplos:
Actores cuyo nombre acabe por la letra A
SELECT * FROM actor where first_name REGEXP ‘A$’
Actores que hayan participado en peliculas de animación
SELECT * FROM actor_info where film_info REGEXP ‘Animation:’
Actores que hayan participado en peliculas de animación pero no en peliculas de Accion
SELECT * FROM actor_info where film_info REGEXP ‘Animation: ‘ and not film_info REGEXP ‘Action:’
Todas las peliculas que tengan escenas eliminadas
SELECT * FROM film where special_features regexp ‘Deleted Scenes’ and not special_features regexp ‘trailers’
Todas las direcciones que sean Lane
SELECT * FROM address where address regexp ‘lane’
Todos los alquileres del mes 5 del 2005
SELECT * FROM rental r where rental_date regexp ‘^2005-05′ order by rental_date ASC
Actores cuyo nombre tenga dos vocales seguidas
SELECT * FROM actor a where first_name regexp ‘((a|e|i|o|u){2})’
Fuentes
http://www.wellho.net/regex/mysql.html