Avalados por :

Cómo utilizar expresiones regulares en consultas SQL Anywhere: guía completa y ejemplos

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 12 Vistas
0
Cargando...

En esta publicación, originalmente escrita por Glenn Paulley y publicada en sybase.com en junio de 2009, Glenn discute cómo las expresiones regulares pueden ser utilizadas en consultas en SQL Anywhere.

SQL Anywhere versión 11.0.0 introdujo soporte para condiciones de búsqueda que incluyen la búsqueda con expresiones regulares. Hay dos variantes de predicados de búsqueda de expresiones regulares que se pueden utilizar, cada uno con su propia semántica: SIMILAR TO y REGEXP .

SIMILAR TO

El predicado SIMILAR TO es parte del estándar SQL ANSI/ISO 2008. Sin embargo, el borrador del próximo estándar SQL, previsto para el año 2011, está actualmente en desarrollo; de hecho, una reunión de edición del WG3 está en curso en Corea esta semana, y es probable que SIMILAR TO sea eliminado de las versiones posteriores del estándar SQL, ya que su funcionalidad está siendo reemplazada por el predicado REGEXP_LIKE (ver más abajo).

La sintaxis del predicado SIMILAR TO es directa:


expresión [ NOT ] SIMILAR TO patrón [ ESCAPE escape-expresión ]

pero como de costumbre, el detalle está en los detalles. Para empezar, aquí hay un ejemplo, utilizando la base de datos de demostración de SQL Anywhere:


SELECT *
FROM Customers
WHERE CódigoPostal NOT SIMILAR TO '([0-9]{5})|([0-9]{5}-[0-9]{4})|([A-Z][0-9][A-Z][[:whitespace:]]{1}[0-9][A-Z][0-9])'

que encuentra todas las direcciones con códigos postales con formato inválido (ya sea de EE. UU. o Canadá); los códigos aceptados tienen los formatos de (a) cinco números (EE. UU.), (b) cinco números, un guion y cuatro números (EE. UU.), y (c) los códigos postales canadienses alfanuméricos de seis caracteres con un espacio en blanco incrustado.



Los patrones de expresiones regulares admitidos por SIMILAR TO , sin embargo, difieren de los admitidos por condiciones de expresiones regulares en otros paquetes de software (como Perl). Aquí hay una pequeña lista no exhaustiva de diferencias (una lista más exhaustiva se encuentra en la documentación de SQL Anywhere 😞

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?