On 08/11/11 13:07, Alvaro Herrera wrote:
Excerpts from Rodrigo Ruiz Fuentes's message of mar nov 08 11:30:59 -0300 2011:
On 08/11/11 10:39, Alvaro Herrera wrote:
Excerpts from Rodrigo Ruiz Fuentes's message of mar nov 08 09:46:09 -0300 2011:
Saludos,
tengo una tabla con cuentas y sus respectivos números, y requiero por
ejemplo encontrar todas las cuentas cuyo número comienza con 12, los
siguientes 2 dígitos puede ser cualquier combinación y los restantes
seis deben ser ceros. La búsqueda debiese traerme las cuentas siguientes
por ejemplo:
Lo más preciso que puedes hacer con LIKE es:

LIKE '12__000000'

esto va a aceptar cualquier cosa que tenga otros caracteres en las
posiciones con _ además de dígitos; si tu campo tiene una restricción
que impida almacenar otras cosas deberías estar OK.  De lo contrario
deberías usar una expresión regular con ^12[0-9]{2}0{6}$ como ya indicó
alguien.
Excelente! Efectivamente, y se me olvidó mencionar, que el número debía
respetar una estructura y por ello no podía utilizar "LIKE '12%000000'",
deben haber 2 digitos en la 3 y 4 posición, para ello me fue util la
expresión que entregó Aldo y Alvaro, "numero ~ E'^29[0-9]{2}0{6}' AND
numero != '2900000000'" ya que debo quitar además '00' en 3 y 4 posición.
Ojo con el $ que debes agregar al final; de lo contrario aceptaría cosas
como 29120000007.


OK, muchas gracias por la recomendación Alvaro. Lo había omitido.
Gracias a Rodrigo Gonzalez también por su ayuda.

Saludos.-

--
Rodrigo Ruiz Fuentes

-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a