Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Eliminar espacios en blanco (https://www.clubdelphi.com/foros/showthread.php?t=57379)

juanchi 12-06-2008 22:27:17

Eliminar espacios en blanco
 
Hola.
Quiero mostrar los números de internos y que le saque los espacios en blanco inicial, pero me muestra registros con interno 405 por ejemplo, y lo que quiero es entre el intervalo 40 a 80

SELECT ,*FROM CAJA
WHERE LTRIM(INTERNO) BETWEEN "40" AND "80"
ORDER BY INTERNO ASC

Saludos

dec 12-06-2008 22:35:49

Hola,

Igual puedes usar una función como "SUBSTR", más o menos de este modo:

Código SQL [-]
SELECT ,*FROM CAJA
WHERE SUBSTR(0, 2, LTRIM(INTERNO)) BETWEEN "40" AND "80"
ORDER BY INTERNO ASC

Ojo, ignoro si SQL cuenta con la función susomentada (MySQL sí, por ejemplo) y también ignoro si los parámetros son del todo correctos (están donde corresponden), pero, creo que se capta la idea: se trata de quedarse únicamente con las dos primeras cifras... que parecen ser las que te interesan.

ContraVeneno 12-06-2008 22:45:33

En SQL Server (si el número de interno fueran realmente puros números) yo haría:
Código SQL [-]
SELECT Campos 
FROM CAJA
WHERE cast(INTERNO as integer) BETWEEN 40 AND 80
ORDER BY INTERNO ASC

si no:
Código SQL [-]
SELECT Campos 
FROM CAJA
WHERE rtrim(ltrim(INTERNO)) BETWEEN '40' AND '80'
ORDER BY INTERNO ASC

juanchi 13-06-2008 12:41:20

Gracias, pero sigo con el mismo problema:confused:. Ya probé con rtrim(ltrim) y no realiza la discriminación del intervalo que quiero utilizar, el resultado de la consulta son los números que empieza con este intervalo.

Saludos

JMG 13-06-2008 13:19:43

Si el número de interno esta definido como char o varchar es lógico que muestre el 405. Prueba a quitar las comillas a la comparación, en firebird funciona como quieres:

Código SQL [-]
SELECT Campos 
FROM CAJA
WHERE INTERNO BETWEEN 40 AND 80
ORDER BY INTERNO ASC

juanchi 13-06-2008 13:26:44

Pero si son valores varchar no se le puede quitar las comillas.

dec 13-06-2008 14:42:12

Hola,

¿Entonces lo que he dicho no vale? Quicir... ¿no se trata de quedarse con los dos primeros caracteres del registro? ;)

poliburro 13-06-2008 15:20:23

Cita:

Empezado por dec (Mensaje 293380)
Hola,

¿Entonces lo que he dicho no vale? Quicir... ¿no se trata de quedarse con los dos primeros caracteres del registro? ;)


Yo creo que el compañero debe proporcionar mas info acerca de su problema:

- Indicarnos un listado parcial de los valores contenidos en ese campo
- El tratamiendo que se le debe dar a cada valor según si necesidad.

Saludos.

juanchi 13-06-2008 15:34:07

De eso se trata, de quedarse con los primeros valores, pero la consulta no me filtra eso. En Sql Server no existe la función SUBSTR.

Saludos.:)

ContraVeneno 13-06-2008 15:47:02

En SQL Server se llama "SubString"


La franja horaria es GMT +2. Ahora son las 07:43:13.

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