Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
Fraccionar un Campo

Hola a todos,
con este qry, trato de leer del campo CUENTA las cuentas hasta 4 posiciones
pero salen las de 3 posiciones, como hago para que solo salgan las de 4 posiciones.

esto es lo que tengo.

Código PHP:
SELECT MID(CUENTA,1,4),FECHA_TRANSACION,SUM(DEBITO) AS TOTAL_DEBITO,SUM(CREDITO) AS TOTAL_CREDITO 
FROM        DETALLE 
WHERE     FECHA_TRANSACION 
>= :PFECHA_DESDE 
AND           FECHA_TRANSACION <= :PFECHA_HASTA
AND           MID(CUENTA,1,7)          = :PCUENTA
GROUP BY MID
(CUENTA,1,7),FECHA_TRANSACION
Gracias mil, por la ayuda que me puedan brindar,


Alcides
Rep.Dom.
Responder Con Cita
  #2  
Antiguo 03-10-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Qué motor estas utilizando Ado + Acces ?.....
En cualquier caso la función está correctamente planteada y te tiene que funcionar, has mirado a ver si cuenta por algún motivo tiene un espacio en blanco.


Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 03-10-2005
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
q valores tienes en tu tabla??
Responder Con Cita
  #4  
Antiguo 03-10-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Tirando tiros al aire, chequea en Where con Lenght(cuenta)=4
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #5  
Antiguo 03-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
gracias a todos,

utilizo access

funciona bien, el asunto es que quiero acumular solo las cuentas hasta 4 posiciones y que las de 3 no salgan.

he buscado ayuda en sql sobre MID y no he podido encontrar nada,
si me pueden decir donde obtengo ayuda sobre MID.


Gracias mil

Alcides
Rep.Dom.

Última edición por alcides fecha: 05-10-2005 a las 21:52:41.
Responder Con Cita
  #6  
Antiguo 05-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
gracias a todos,


he buscado ayuda en sql sobre MID y no he podido encontrar nada,
si me pueden decir donde obtengo ayuda sobre MID.

Gracias mil

Alcides
Rep.Dom.
Responder Con Cita
  #7  
Antiguo 05-10-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Aqui tienes un ejemplo hecho directamente en Access:

Código SQL [-]
 SELECT AUTORES.AUTOR, AUTORES.NOMBRE, Mid([nombre],1,2) AS abc
 FROM AUTORES;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #8  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola a todos,
atención: Marcoszorrilla

chequeen este ejemplo:
tengo un numero de cuenta y un valor.
el campo cuenta es string y valor es numerico.

cuenta = '12345' valor = 450.00
cuenta = '12345' valor = 200.00
cuenta = '123' valor = 380.00

entonces con esto:

mid(cuenta),1,4)

quiero que salgan solamente

cuenta = '12345' valor = 450.00
cuenta = '12345' valor = 200.00

no he podido obtener esto,

si me pueden ayudar por fa

gracias mil

Alcides
Rep.Dom.
Responder Con Cita
  #9  
Antiguo 06-10-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
El planteamiento entonces es distinto.
Código SQL [-]
 Where Cuenta Like "12345%"
 //para Access
 Where cuenta like "12345*"

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #10  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
Hola a todos
atención: Marcoszorrilla

ok.
Where cuenta like "1234*"
Mi pregunta es la siguiente como 1234 es un ejemplo de un numero cualquiera quisiera saber si ese 1234 puedo sustituirlo por ejemplo asi:
Where cuenta like "####*"


Gracias mil

Alcides
Rep.Dom.
Responder Con Cita
  #11  
Antiguo 06-10-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
No se puede, explícate un poco más a ver si logramos ponerlo en marcha.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #12  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
Hola a todos,

Atención: Marcoszorrilla.

me explico:

resulta que tengo tabla con un campo string CUENTA y tengo un campo numerico VALOR, entonces CUENTA es campo que su contenido va cambiar de tamaño, puede tener dos digitos, tres digitos, cuatro digitos, cinco digitos, seis digitos y hasta siete digitos. y quiero que cuando utilize mi query MID(CUENTA,1,4) solo salgan las cuentas con cuatro digitos: porque de esta forma salen las de 4 digitos y tambien las de 3 digitos, ese es el problema.


espero me entiendan, sino de todos modos, gracias mil.


Gracias mil,

Alcides
Rep.Dom.
Responder Con Cita
  #13  
Antiguo 06-10-2005
Avatar de Chente(rMan)
Chente(rMan) Chente(rMan) is offline
Miembro
 
Registrado: ago 2005
Posts: 89
Poder: 19
Chente(rMan) Va por buen camino
Creo que asi se puede.

Código SQL [-]
where cuenta like '%' + @Nombre + '%'

edito:
creo que necesitas poner esto, donde longitud es la longitud de la cuenta que quieres.

Código SQL [-]
where len(cuenta) = @longitud

Saludos.

Vicente López.
Responder Con Cita
  #14  
Antiguo 06-10-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si el valor es numérico:
Código SQL [-]
Where valor > 999 and Valor < 10000

Un Saludo.
]
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #15  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
hola a todos,

Marcos el asunto no es con el campo valor es con el campo cuenta que es string

voy a chequear lo de Chente(rman)

Gracias mil

Alcides
Rep.Dom.
Responder Con Cita
  #16  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
Gracias Chente(rman) funciona, pero no entiendo porque comienza a traerme las cuentas desde 1411 en lugar 1111.

tiene salir este orden 1111
1112
1113
1411
1414

y comienza en la 1411
1414

pero voy a seguir, porque con esto

where len(cuenta) = 4

parece que voy a resolver


Gracias mil,

Alcides
Rep.Dom.
Responder Con Cita
  #17  
Antiguo 06-10-2005
Avatar de Chente(rMan)
Chente(rMan) Chente(rMan) is offline
Miembro
 
Registrado: ago 2005
Posts: 89
Poder: 19
Chente(rMan) Va por buen camino
y si le agregas...

Código SQL [-]
order by cuenta


Saludos

Vicente López.
Responder Con Cita
  #18  
Antiguo 06-10-2005
Avatar de alcides
alcides alcides is offline
Miembro
 
Registrado: dic 2003
Ubicación: Republica Dominicana
Posts: 204
Poder: 21
alcides Va por buen camino
gracias Chente(rman) por tu repuesta, pero no es por el order by, es que no la esta tomando en cuenta esas CUENTAS.

pero voy a seguir investigando.


Gracias mil,


Alcides
Rep.Dom.
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


La franja horaria es GMT +2. Ahora son las 16:41:37.


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