SQL Server - Consultas con variables

   
Vista:

Consultas con variables

Publicado por cesar Augusto (7 intervenciones) el 14/04/2010 20:26:10
hola espero me puedan ayudar el caso es que necesito hacer una consulta un ejemplo seria

select campo1,campo2 from mitabla

el caso seria que si el nombre campo1 lo pusiera en una variable y hacer el select

select @micampo from mitabla

el motivo esque estoy en una consulta para un reporte ejecutivo(puros numeros) ps lo intento contar la veces que aparecen los 6diferentes valores que tiene cada uno son fijos y por se tanto campos guardo los nombres de los campos en una variable de tipo tabla y con un cursor recorro lo nombre pero la consulta solo me regresa el titulo del campo

gracias espero me puedan ayudar
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

RE:Consultas con variables

Publicado por Isaias (3180 intervenciones) el 14/04/2010 22:16:41
Ya hemos comentado este tipo de dudas por aqui en los foros y cuando se habla de utilizar variables, ya sea de columnas o tablas, entonces se refiere a QUERY DINAMICO, con sus pro y sus contras.

DECLARE @MyColumna VARCHAR(255)
DECLARE @SQLString NVARCHAR(800)
SET @MyColumna = 'col1, col2, col3'
SET @SQLString = N'SELECT '+@MyColumna+' FROM myTabla WHERE.....'
EXECUTE sp_executesql @SQLString
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consultas con variables

Publicado por cesar Augusto (7 intervenciones) el 14/04/2010 23:39:37
Gracias =D me ayudo mucho
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

RE:Consultas con variables

Publicado por Isaias (3180 intervenciones) el 15/04/2010 00:18:38
Cuida la inyeccion de codigo y debes tomar en cuenta que en este tipo de consultas, muchas veces, no se hace uso de indices y el plan de ejcucion es lento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar