Armar SQL y despues ejecutarlo

24/09/2004 - 22:33 por Yan Carlos | Informe spam
Hola necesito la ayuda de Uds por favor...
Estoy armando una sentencia SQL y concatenandola en una variable hasta que
tenga la estructura adecuada... una vez que tengo toda la sentencia como la
ejecuto... algo asi
Set @misql = 'SELECT * '
Set @misql=@misql + 'FROM Tabla'
Como veo el resultado de la consulta que tiene @misql
Muchas gracias, espero su pronta respuesta...

Saludos
YAN

Preguntas similare

Leer las respuestas

#21 Javier Loria
26/09/2004 - 21:43 | Informe spam
Hola:
Podrias esconder el desastre detras de una vista:
==CREATE VIEW Ventas
AS
SELECT FROM Ventas200401 UNION ALL
SELECT FROM Ventas200402 UNION ALL
SELECT FROM Ventas200403 UNION ALL
...
SELECT FROM Ventas200512 UNION ALL
== 18 meses deberian bastar para limpiar el esquema :)
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Yan Carlos" wrote in message
news:
Hola Maxi... esa tabla ya estaba creada cuado llegue a trabajar por eso no
puedo hacer nada...

Ventas200409 = 09 es setiembre, pero con la funcion month() yo obtengo 9,
por eso quiero darle el formato de 09 y poner algo asi:
Ventas + Year(Getdate()) + format(Month(Getdate()),'00')


"MAXI" escribió en el mensaje
news:
> mmm, sabes que ese diseño no me gusta :(, es muy dificil de mantener y
poder
> hacer algo :(. Porque no hacerlo con los registros? no por columna?
>
> De todas formas no entiendo porque el 09 en el formato :-s
>
>
>
>
> Maxi
>
> Buenos Aires - Argentina
> Desarrollador .NET 3 Estrellas
> Microsoft User Group (MUG)
> Mail: Maxi_accotto[arroba]speedy.com.ar
>
> Msn Messager:
>
> "Yan Carlos" escribió en el


mensaje
> news:
> > Hola Maxi... sabes que tengo que armar mi sql asi, porque tengo una
tabla
> > (se que no es la mejor forma) que tiene estos campos:
> >
> > Venta200401=Venta del año 2004 del mes 01(Enero)
> > Venta200402=Venta del año 2004 del mes 02(Febrero)...
> > y asi creo una columna por mes...
> > por eso es que tengo que concatenar y darle un formato 09 si quiero


ver
> > las
> > ventas del mes de Julio...
> >
> > Alguna idea?
> >
> > "Maxi" escribió en el mensaje
> > news:
> >> Yan, esas cosas las deberias hacer en la capa de presentacion y no en
la
> >> BDD.
> >>
> >>
> >> Salu2
> >> Maxi
> >> Buenos Aires - Argentina
> >> Desarrollador Microsoft 3 Estrellas .NET
> >> Nunca consideres el estudio como una obligación sino como
> >> una oportunidad para penetrar en el bello y maravillosos
> >> mundo del saber.
> >> - Albert Einstein
> >>
> >>
> >>
> >> "Yan Carlos" escribió en el
mensaje
> >> news:%
> >> > gracias por la rapidez de sus respuestas salio OK otra consulta
> >> > como
> >> le
> >> > puedo dar un formato por ejemplo al numero 9 para que sea 09, algo
como
> > el
> >> > format en visual basic..
> >> > Gracias
> >> > "Ivan Mostacero" escribió en el mensaje
> >> > news:
> >> > > asi podria ser : Exec(@misql)
> >> > > saludos.
> >> > > "Yan Carlos" wrote in


message
> >> > > news:
> >> > > > Hola necesito la ayuda de Uds por favor...
> >> > > > Estoy armando una sentencia SQL y concatenandola en una


variable
> >> hasta
> >> > > que
> >> > > > tenga la estructura adecuada... una vez que tengo toda la
sentencia
> >> como
> >> > > la
> >> > > > ejecuto... algo asi
> >> > > > Set @misql = 'SELECT * '
> >> > > > Set @misql=@misql + 'FROM Tabla'
> >> > > > Como veo el resultado de la consulta que tiene @misql
> >> > > > Muchas gracias, espero su pronta respuesta...
> >> > > >
> >> > > > Saludos
> >> > > > YAN
> >> > > >
> >> > > >
> >> > >
> >> > >
> >> >
> >> >
> >>
> >>
> >>
> >> Outgoing mail is certified Virus Free.
> >> Checked by AVG anti-virus system (http://www.grisoft.com).
> >> Version: 6.0.764 / Virus Database: 511 - Release Date: 15/09/2004
> >>
> >>
> >
> >
>
>


Respuesta Responder a este mensaje
#22 Javier Loria
26/09/2004 - 21:43 | Informe spam
Hola:
Podrias esconder el desastre detras de una vista:
==CREATE VIEW Ventas
AS
SELECT FROM Ventas200401 UNION ALL
SELECT FROM Ventas200402 UNION ALL
SELECT FROM Ventas200403 UNION ALL
...
SELECT FROM Ventas200512 UNION ALL
== 18 meses deberian bastar para limpiar el esquema :)
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Yan Carlos" wrote in message
news:
Hola Maxi... esa tabla ya estaba creada cuado llegue a trabajar por eso no
puedo hacer nada...

Ventas200409 = 09 es setiembre, pero con la funcion month() yo obtengo 9,
por eso quiero darle el formato de 09 y poner algo asi:
Ventas + Year(Getdate()) + format(Month(Getdate()),'00')


"MAXI" escribió en el mensaje
news:
> mmm, sabes que ese diseño no me gusta :(, es muy dificil de mantener y
poder
> hacer algo :(. Porque no hacerlo con los registros? no por columna?
>
> De todas formas no entiendo porque el 09 en el formato :-s
>
>
>
>
> Maxi
>
> Buenos Aires - Argentina
> Desarrollador .NET 3 Estrellas
> Microsoft User Group (MUG)
> Mail: Maxi_accotto[arroba]speedy.com.ar
>
> Msn Messager:
>
> "Yan Carlos" escribió en el


mensaje
> news:
> > Hola Maxi... sabes que tengo que armar mi sql asi, porque tengo una
tabla
> > (se que no es la mejor forma) que tiene estos campos:
> >
> > Venta200401=Venta del año 2004 del mes 01(Enero)
> > Venta200402=Venta del año 2004 del mes 02(Febrero)...
> > y asi creo una columna por mes...
> > por eso es que tengo que concatenar y darle un formato 09 si quiero


ver
> > las
> > ventas del mes de Julio...
> >
> > Alguna idea?
> >
> > "Maxi" escribió en el mensaje
> > news:
> >> Yan, esas cosas las deberias hacer en la capa de presentacion y no en
la
> >> BDD.
> >>
> >>
> >> Salu2
> >> Maxi
> >> Buenos Aires - Argentina
> >> Desarrollador Microsoft 3 Estrellas .NET
> >> Nunca consideres el estudio como una obligación sino como
> >> una oportunidad para penetrar en el bello y maravillosos
> >> mundo del saber.
> >> - Albert Einstein
> >>
> >>
> >>
> >> "Yan Carlos" escribió en el
mensaje
> >> news:%
> >> > gracias por la rapidez de sus respuestas salio OK otra consulta
> >> > como
> >> le
> >> > puedo dar un formato por ejemplo al numero 9 para que sea 09, algo
como
> > el
> >> > format en visual basic..
> >> > Gracias
> >> > "Ivan Mostacero" escribió en el mensaje
> >> > news:
> >> > > asi podria ser : Exec(@misql)
> >> > > saludos.
> >> > > "Yan Carlos" wrote in


message
> >> > > news:
> >> > > > Hola necesito la ayuda de Uds por favor...
> >> > > > Estoy armando una sentencia SQL y concatenandola en una


variable
> >> hasta
> >> > > que
> >> > > > tenga la estructura adecuada... una vez que tengo toda la
sentencia
> >> como
> >> > > la
> >> > > > ejecuto... algo asi
> >> > > > Set @misql = 'SELECT * '
> >> > > > Set @misql=@misql + 'FROM Tabla'
> >> > > > Como veo el resultado de la consulta que tiene @misql
> >> > > > Muchas gracias, espero su pronta respuesta...
> >> > > >
> >> > > > Saludos
> >> > > > YAN
> >> > > >
> >> > > >
> >> > >
> >> > >
> >> >
> >> >
> >>
> >>
> >>
> >> Outgoing mail is certified Virus Free.
> >> Checked by AVG anti-virus system (http://www.grisoft.com).
> >> Version: 6.0.764 / Virus Database: 511 - Release Date: 15/09/2004
> >>
> >>
> >
> >
>
>


Respuesta Responder a este mensaje
#23 Cesar Toledo
28/09/2004 - 15:14 | Informe spam
replace ( str( month(getdate() ), 2 ), ' ', '0' )


Saludos


"Yan Carlos" escribió en el mensaje
news:
Hola Maxi... esa tabla ya estaba creada cuado llegue a trabajar por eso no
puedo hacer nada...

Ventas200409 = 09 es setiembre, pero con la funcion month() yo obtengo 9,
por eso quiero darle el formato de 09 y poner algo asi:
Ventas + Year(Getdate()) + format(Month(Getdate()),'00')


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida