Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-03-2011
kambiz kambiz is offline
Miembro
 
Registrado: jun 2004
Posts: 24
Poder: 0
kambiz Va por buen camino
Eliminar zeros

Buenas,
Existe alguna función que elimine los ceros a la izquierda en un string. 'Replace' no me vale.
Por ejemplo:
Registro 1: Referencia = '000134-580'
Registro 2: Referencia = '134-580'
Registro 3: Referencia = '00134-580'

Lo que quiero es que con el siguiente select (uso un TAdoQuery):
Select * from tabla where Referencia = '134-580
me devuelva los tres registros

Muchas gracias
Responder Con Cita
  #2  
Antiguo 12-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Código SQL [-]
select * from tabla where Referencia like '%134-580%'
Responder Con Cita
  #3  
Antiguo 12-03-2011
kambiz kambiz is offline
Miembro
 
Registrado: jun 2004
Posts: 24
Poder: 0
kambiz Va por buen camino
Gracias pero no me sirve, por dos motivos:
- el programa es muy complejo y no me atrevo a cambiar la instrucción sql, por lo que no me sirve poner la condición en el where.
- porqué '%134-580%' no hace lo que yo quiero.
Por ejemplo:
Registro 1: Referencia = '000134-580'
Registro 2: Referencia = '134-580'
Registro 3: Referencia = '00134-580'
Registre 4: Referencia = '134-580 abc'

Me devolvería los 4 registros y el cuarto no cumple con la condición
Responder Con Cita
  #4  
Antiguo 12-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pues cuéntanos todos los casos posibles que valen o no valen, no somos adivinos
Responder Con Cita
  #5  
Antiguo 12-03-2011
kambiz kambiz is offline
Miembro
 
Registrado: jun 2004
Posts: 24
Poder: 0
kambiz Va por buen camino
Casimiro, mi primer post pone exactamente que quiero, una función para eliminar los ceros de la izquierda en un string, es decir, quiero que:
'000134-58'
'0000000134-58'
'00134-58'
....

Tengo un query con 1000 registros, y quiero filtrar aquellos registros cuyo campo referencia sea '134-58'.

Los tres ejemplos anteriores entrarían dentro del filtro, este, por ejemplo no, '000134-58 abc'

Mejor no lo puedo explicar
Gracias
Responder Con Cita
  #6  
Antiguo 13-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y lo quieres hacer desde delphi o en sql?
Responder Con Cita
  #7  
Antiguo 13-03-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Hola kambiz.

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Código SQL [-]
select * from tabla where Referencia like '%134-580%'
Tomando la primera sugerencia de Casimiro (y suponiendo que no haya problema para lanzar una sentencia SQL desde Delphi), sólo hay que quitar el segúndo "%":
Código SQL [-]
Select * From Tabla Where Referencia Like '%134-580'
Dices que no te atreves a cambiar la instrucción SQL, pero es eso mismo lo que sugieres con tu primer mensaje, por lo que se genera algo de confusión.

Sobre la última sugerencia del propio Casimiro, dices que te aparece un error, pero no mencionas cuál ni en qué instrucción (algo que es elemental cuando se hacen consultas en un foro).

Donde estoy es por la mañana, donde está Casi es de tarde, alguien estará leyendo esto desde algún lugar de Asia donde ahora mismo es de noche, ¿tú dónde estás?

Toma en cuenta que no siempre es fácil interpretar lo que algún compañero pregunta, aunque para él esté muy claro. Y nunca está de más la cortesía de un "bueno, mira, quizá no me expliqué bien, te pongo un ejemplo..." (eso de "mi primer post pone exactamente que quiero" fue un poco grosero).

Aquí estamos todos para ayudarnos; ayúdanos a ayudarte.

Al González.
Responder Con Cita
  #8  
Antiguo 13-03-2011
kambiz kambiz is offline
Miembro
 
Registrado: jun 2004
Posts: 24
Poder: 0
kambiz Va por buen camino
Tal como dices, Al González, en todos los post estoy dando las gracias, con lo que si algunas palabras mías te puedan resultar groseras, no deja de ser tu interpretación.
Además, si estoy preguntando y alguien me contesta desinteresadamente, sería absurdo por mi parte contestarle mal o con algún tipo de exigencia.
No entiendo porqué me echas la bronca
Responder Con Cita
  #9  
Antiguo 13-03-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Descuida, no hay bronca tal.
Responder Con Cita
  #10  
Antiguo 13-03-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.107
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pienso que el principal problema es de desconocimiento, que no conoce el programa y no se atreve a tocar nada, pero el problema es que así no es fácil ayudar.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Completar campo con zeros alcides Varios 8 20-02-2009 17:39:15
Eliminar Caracteres ZayDun Varios 3 28-03-2007 02:04:08
Eliminar el BDE roman Varios 9 05-09-2006 15:24:51
eliminar opcion de eliminar en un dbgrid morfeo21 Varios 3 14-07-2005 17:05:32
Eliminar formulario jose_2057111 Varios 1 10-12-2004 13:21:42


La franja horaria es GMT +2. Ahora son las 19:10:27.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi