Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   trabajar con substring (https://www.clubdelphi.com/foros/showthread.php?t=67487)

pronto7 19-04-2010 19:36:55

trabajar con substring
 
quiero hacer una consulta en donde me muestre los tres ultimos digitos de la columna y se que lo puedo hacer con la función substring pero no se como usarla si alguien me ayuda por favor...

marcoszorrilla 19-04-2010 19:42:16

Código SQL [-]
  SUBSTRING(Nombre_Campo FROM 2 FOR 3)

Este es un ejemplo de uso de la sintáxis pero necesitas aún más, pues tienes que saber el ancho del texto para saber por donde empezar.

Qué base de datos estás utilizando?

Un Saludo.

roman 19-04-2010 19:42:32

Mmm. No sé qué base de datos uses, algunas incluyen más funciones para el manejo de strings que otras. Podrías probar con algo así:

Código SQL [-]
select substring(campo, length(campo) - 3, 3) from tabla

// Saludos

pronto7 19-04-2010 22:38:46

substring
 
estoy trabajando con sql server y he colocado esto pero no me funciona soy un novato
('select * from Articulos5 where Substring(Categorias, 4, 3,)');

pronto7 19-04-2010 22:42:27

el ancho del texto
 
el ancho del texto es de 10 digitos y no cambia

marcoszorrilla 19-04-2010 22:43:07

Suponiendo que la expresión esté bien escrita para SQL Server:

Código SQL [-]
(select * from Articulos5 where Substring(Categorias, 4, 3size="5">,)');
La coma que te marco te sobra, por otra parte si tienes un Where quiere decir que vas a realizar una comparación y no la estas haciendo.
Código SQL [-]
Select * from Articulos Where Substring(Categoiras,4,3) ="ABC");

No se porque me parece que en SQL Server sería SUBSTR y no Substring.

Un Saludo.

Caro 19-04-2010 23:53:59

Cita:

Empezado por marcoszorrilla (Mensaje 361111)
No se porque me parece que en SQL Server sería SUBSTR y no Substring.

Hola Marcos :), en Sql Sever es SubString.

Pronto7, si quieres obtener los ultimos 3 caracteres de tu campo debes poner el SubString en el Select y no en el Where, ademas de tomar en cuenta lo que te ha indicado Roman y cambiar Length por Len.

Código SQL [-]
SELECT SUBSTRING(NombreCampo, LEN(NombreCampo) - 2, 3)
FROM Tabla

Saluditos

marcoszorrilla 20-04-2010 14:53:46

Gracias por la aclaración Caro, pues no tenía a mano manera de comprobar la sintaxis exacta.

Un Saludo.


La franja horaria es GMT +2. Ahora son las 00:47:52.

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