Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Extraer datos especificos de una columna

Estas en el tema de Extraer datos especificos de una columna en el foro de SQL Server en Foros del Web. Estimados, Que tal, tengo una consulta, tengo una tabla en SQL, que contiene una columna con la siguiente informacion: Site Index=252, Cell Index=252, Alarm Cause=Other ...
  #1 (permalink)  
Antiguo 14/08/2014, 08:32
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Pregunta Extraer datos especificos de una columna

Estimados,

Que tal, tengo una consulta, tengo una tabla en SQL, que contiene una columna con la siguiente informacion:

Site Index=252, Cell Index=252, Alarm Cause=Other causes, Site Type=BTS3900E, Site Name=S_YOMBLON, Cell Name=AM02520, Cell CGI=716-06-1041-4f1a

Lo que desearia hacer es extraer la frase desde el Site Name hacia adelante, por ejemplo:

Site Name=S_YOMBLON, Cell Name=AM02520, Cell CGI=716-06-1041-4f1a

Se que puedo hacerlo con un substring, pero el problema es que la cantidad de caracteres varian, por lo que un substring no funcionaria correctamente..

Alguna ayuda...?
__________________
Lo que no se....tampoco creo saberlo....
  #2 (permalink)  
Antiguo 14/08/2014, 08:38
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Extraer datos especificos de una columna

como que un substring no funcionaria????

Código SQL:
Ver original
  1. DECLARE @variable VARCHAR(MAX)
  2. SET @variable='Site Index=252, Cell Index=252,mi mama me miama mucho, aquie mas cosas Alarm Cause=Other causes, Site Type=BTS3900E, Site Name=S_YOMBLON, Cell Name=AM02520, Cell CGI=716-06-1041-4f1a, y aca ponemos mas'
  3. SELECT SUBSTRING(@variable,charindex('Site Type',@variable,1),len(@variable))

Aqui el resultado usando substring y otra funcion de string de sql llamada charindex.....
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 14/08/2014, 08:44
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Precisamente estaba viendo la funcion charindex para hacer esto....
Pero aclarame una cosa Libras, esto funcionaria para todos los registros de la columna...?? porque tengo mas de 1000 registros, y al tratar de usar el charindex me salia error, como si solo me permitiria mostrar 1 dato....
__________________
Lo que no se....tampoco creo saberlo....
  #4 (permalink)  
Antiguo 14/08/2014, 09:01
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Extraer datos especificos de una columna

se puede usar para toda la columna como lo estas usando???
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 14/08/2014, 09:06
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Estoy usandolo de la siguiente manera:
Código SQL:
Ver original
  1. DECLARE @variable VARCHAR(MAX)
  2. SET @variable= (SELECT LOCATION_INFORMATION FROM INT_DETALLE_X_ALARMA)
  3. SELECT SUBSTRING(@variable,charindex('S_',@variable,1),len(@variable))

Pero esto muestra este error:

Mens. 512, Nivel 16, Estado 1, Línea 2
La subconsulta ha devuelto más de un valor, lo que no es correcto cuando va a continuación de =, !=, <, <=, >, >= o cuando se utiliza como expresión.
__________________
Lo que no se....tampoco creo saberlo....
  #6 (permalink)  
Antiguo 14/08/2014, 09:10
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Extraer datos especificos de una columna

Me lo imaginaba por el contexto de tu comentario anterior......


Código SQL:
Ver original
  1. SELECT
  2. SUBSTRING(LOCATION_INFORMATION ,charindex('S_',LOCATION_INFORMATION ,1),len(LOCATION_INFORMATION )) AS dato
  3. FROM INT_DETALLE_X_ALARMA

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 14/08/2014, 09:22
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Bravazo libras....funciona sin problemas...ahora otra consulta....como se podria aplicar esto para actualizar una nueva columna, es decir, necesitaba esta "extraccion" para poder actualizar una nueva columna, si haria un insert se adicionarian estos registros, aumentando los registros de mi tabla, pero si hago un actualizar, como seria...?
__________________
Lo que no se....tampoco creo saberlo....
  #8 (permalink)  
Antiguo 14/08/2014, 09:35
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Libras...No consideres el comentario anterior....ya lo resolvi...gracias... (Y)
__________________
Lo que no se....tampoco creo saberlo....
  #9 (permalink)  
Antiguo 14/08/2014, 09:56
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Libras....una ultima consulta....
y si a esto :

Site Index=252, Cell Index=252, Alarm Cause=Other causes, Site Type=BTS3900E, Site Name=S_YOMBLON, Cell Name=AM02520, Cell CGI=716-06-1041-4f1a

deseo extraer lo que esta desde 'S_' hasta la primera coma, por ejemplo S_YOMBLON que tendria que modificar...??
__________________
Lo que no se....tampoco creo saberlo....
  #10 (permalink)  
Antiguo 14/08/2014, 10:02
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Extraer datos especificos de una columna

Algo como esto:

Código SQL:
Ver original
  1. DECLARE @variable VARCHAR(MAX)
  2. SET @variable='Site Index=252, Cell Index=252, Alarm Cause=Other causes, Site Type=BTS3900E, Site Name=S_YOMBLON, Cell Name=AM02520, Cell CGI=716-06-1041-4f1a'
  3. SELECT SUBSTRING(SUBSTRING(@variable,charindex('S_',@variable,1),len(@variable)),1,(charindex(',',SUBSTRING(@variable,charindex('S_',@variable,1),len(@variable)),1))-1)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #11 (permalink)  
Antiguo 14/08/2014, 10:06
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Y eso de igual manera aplicara para todos los registros...???
__________________
Lo que no se....tampoco creo saberlo....
  #12 (permalink)  
Antiguo 14/08/2014, 10:08
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Respuesta: Extraer datos especificos de una columna

Si, ya funciono...Gracias Libras...!!!!
__________________
Lo que no se....tampoco creo saberlo....

Etiquetas: columna, funcion, siguiente, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:57.