Select complicado

04/11/2003 - 21:44 por Julio | Informe spam
Hola grupo:

Quiero hacer un Select a una tabla, para eso tengo creado un stored
procedure.
El objectivo de este select es hacer una busqueda que sea:
por Mes o por año o que cuando utilize las dos variables me devuelva el
valor que correspondan a la informacion que puse en las dos varables.

Este es el store procedure:

CREATE Procedure dbo.Busqueda_mes_año_scobros
@mes nvarchar(4000)= null,
@Año nvarchar(4000)= null
As

select Mes, convert( varchar(10), fecha_emision , 103 ) as fecha_emision
from status_cobros
where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'

De esta manera solo me devuelve el valor que ponga en ambas variable, pero
no me lo hace individual, es decir si solo pongo una varible que me traiga
el vaor por esa sola variable.

Ejemplo1
@Mes = Enero

Mes Año
Enero 2003
Enero 2001

Ejemplo2

@Mes = Enero
@Año = 2003

Mes Año
Enero 2003

Preguntas similare

Leer las respuestas

#1 Norman A. Armas
04/11/2003 - 22:30 | Informe spam
where mes=isnull(@mes,Mes) and fecha_emision=isnull(@Año,Año)


saludos


Norman


"Julio" wrote in message
news:
Hola grupo:

Quiero hacer un Select a una tabla, para eso tengo creado un stored
procedure.
El objectivo de este select es hacer una busqueda que sea:
por Mes o por año o que cuando utilize las dos variables me devuelva el
valor que correspondan a la informacion que puse en las dos varables.

Este es el store procedure:

CREATE Procedure dbo.Busqueda_mes_año_scobros
@mes nvarchar(4000)= null,
@Año nvarchar(4000)= null
As

select Mes, convert( varchar(10), fecha_emision , 103 ) as fecha_emision
from status_cobros
where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'

De esta manera solo me devuelve el valor que ponga en ambas variable, pero
no me lo hace individual, es decir si solo pongo una varible que me traiga
el vaor por esa sola variable.

Ejemplo1
@Mes = Enero

Mes Año
Enero 2003
Enero 2001

Ejemplo2

@Mes = Enero
@Año = 2003

Mes Año
Enero 2003




Respuesta Responder a este mensaje
#2 Julio rodriguez
05/11/2003 - 00:46 | Informe spam
Cuando lo corro me sale el siguiente error

DECLARE @RC int
DECLARE @mes nvarchar(40)
DECLARE @Año nvarchar(40)
SELECT @mes = N'enero'
SELECT @Año = N'2004'
EXEC @RC = [BDUNR].[dbo].[Busqueda_mes_año_cobros] @mes, @Año
DECLARE @PrnLine nvarchar(4000)
PRINT 'Stored Procedure: BDUNR.dbo.Busqueda_mes_año_cobros'
SELECT @PrnLine = ' Return Code = ' + CONVERT(nvarchar, @RC)
PRINT @PrnLine

Server: Msg 295, Level 16, State 3, Procedure Busqueda_mes_año_cobros, Line
8
Syntax error converting character string to smalldatetime data type.

where mes=isnull(@mes,Mes) and fecha_emision=isnull('@Año','Año')



"Norman A. Armas" wrote in message
news:#
where mes=isnull(@mes,Mes) and fecha_emision=isnull(@Año,Año)


saludos


Norman


"Julio" wrote in message
news:
> Hola grupo:
>
> Quiero hacer un Select a una tabla, para eso tengo creado un stored
> procedure.
> El objectivo de este select es hacer una busqueda que sea:
> por Mes o por año o que cuando utilize las dos variables me devuelva el
> valor que correspondan a la informacion que puse en las dos varables.
>
> Este es el store procedure:
>
> CREATE Procedure dbo.Busqueda_mes_año_scobros
> @mes nvarchar(4000)= null,
> @Año nvarchar(4000)= null
> As
>
> select Mes, convert( varchar(10), fecha_emision , 103 ) as fecha_emision
> from status_cobros
> where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'
>
> De esta manera solo me devuelve el valor que ponga en ambas variable,


pero
> no me lo hace individual, es decir si solo pongo una varible que me


traiga
> el vaor por esa sola variable.
>
> Ejemplo1
> @Mes = Enero
>
> Mes Año
> Enero 2003
> Enero 2001
>
> Ejemplo2
>
> @Mes = Enero
> @Año = 2003
>
> Mes Año
> Enero 2003
>
>
>
>


Respuesta Responder a este mensaje
#3 Accotto Maximiliano Damian
05/11/2003 - 00:50 | Informe spam
isnull('@Año','Año')

ahi hay algo mal!! no sera asi: isnull(@Año,Año)




ACCOTTO MAXIMILIANO DAMIAN
GERENTE DE SISTEMAS
UN SALUDO MUY CORDIAL
"Julio rodriguez" escribió en el mensaje
news:
Cuando lo corro me sale el siguiente error

DECLARE @RC int
DECLARE @mes nvarchar(40)
DECLARE @Año nvarchar(40)
SELECT @mes = N'enero'
SELECT @Año = N'2004'
EXEC @RC = [BDUNR].[dbo].[Busqueda_mes_año_cobros] @mes, @Año
DECLARE @PrnLine nvarchar(4000)
PRINT 'Stored Procedure: BDUNR.dbo.Busqueda_mes_año_cobros'
SELECT @PrnLine = ' Return Code = ' + CONVERT(nvarchar, @RC)
PRINT @PrnLine

Server: Msg 295, Level 16, State 3, Procedure Busqueda_mes_año_cobros,


Line
8
Syntax error converting character string to smalldatetime data type.

where mes=isnull(@mes,Mes) and fecha_emision=isnull('@Año','Año')



"Norman A. Armas" wrote in message
news:#
> where mes=isnull(@mes,Mes) and fecha_emision=isnull(@Año,Año)
>
>
> saludos
>
>
> Norman
>
>
> "Julio" wrote in message
> news:
> > Hola grupo:
> >
> > Quiero hacer un Select a una tabla, para eso tengo creado un stored
> > procedure.
> > El objectivo de este select es hacer una busqueda que sea:
> > por Mes o por año o que cuando utilize las dos variables me devuelva


el
> > valor que correspondan a la informacion que puse en las dos varables.
> >
> > Este es el store procedure:
> >
> > CREATE Procedure dbo.Busqueda_mes_año_scobros
> > @mes nvarchar(4000)= null,
> > @Año nvarchar(4000)= null
> > As
> >
> > select Mes, convert( varchar(10), fecha_emision , 103 ) as


fecha_emision
> > from status_cobros
> > where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'
> >
> > De esta manera solo me devuelve el valor que ponga en ambas variable,
pero
> > no me lo hace individual, es decir si solo pongo una varible que me
traiga
> > el vaor por esa sola variable.
> >
> > Ejemplo1
> > @Mes = Enero
> >
> > Mes Año
> > Enero 2003
> > Enero 2001
> >
> > Ejemplo2
> >
> > @Mes = Enero
> > @Año = 2003
> >
> > Mes Año
> > Enero 2003
> >
> >
> >
> >
>
>


Respuesta Responder a este mensaje
#4 Julio rodriguez
05/11/2003 - 01:00 | Informe spam
Hola Maximiliano, le agregue las comillas porque me decia:

Server: Msg 207, Level 16, State 3, Procedure Busqueda_mes_año_cobros, Line
6
Invalid column name 'Año'.


"Accotto Maximiliano Damian" wrote in
message news:
isnull('@Año','Año')

ahi hay algo mal!! no sera asi: isnull(@Año,Año)




ACCOTTO MAXIMILIANO DAMIAN
GERENTE DE SISTEMAS
UN SALUDO MUY CORDIAL
"Julio rodriguez" escribió en el mensaje
news:
> Cuando lo corro me sale el siguiente error
>
> DECLARE @RC int
> DECLARE @mes nvarchar(40)
> DECLARE @Año nvarchar(40)
> SELECT @mes = N'enero'
> SELECT @Año = N'2004'
> EXEC @RC = [BDUNR].[dbo].[Busqueda_mes_año_cobros] @mes, @Año
> DECLARE @PrnLine nvarchar(4000)
> PRINT 'Stored Procedure: BDUNR.dbo.Busqueda_mes_año_cobros'
> SELECT @PrnLine = ' Return Code = ' + CONVERT(nvarchar, @RC)
> PRINT @PrnLine
>
> Server: Msg 295, Level 16, State 3, Procedure Busqueda_mes_año_cobros,
Line
> 8
> Syntax error converting character string to smalldatetime data type.
>
> where mes=isnull(@mes,Mes) and fecha_emision=isnull('@Año','Año')
>
>
>
> "Norman A. Armas" wrote in message
> news:#
> > where mes=isnull(@mes,Mes) and fecha_emision=isnull(@Año,Año)
> >
> >
> > saludos
> >
> >
> > Norman
> >
> >
> > "Julio" wrote in message
> > news:
> > > Hola grupo:
> > >
> > > Quiero hacer un Select a una tabla, para eso tengo creado un stored
> > > procedure.
> > > El objectivo de este select es hacer una busqueda que sea:
> > > por Mes o por año o que cuando utilize las dos variables me devuelva
el
> > > valor que correspondan a la informacion que puse en las dos


varables.
> > >
> > > Este es el store procedure:
> > >
> > > CREATE Procedure dbo.Busqueda_mes_año_scobros
> > > @mes nvarchar(4000)= null,
> > > @Año nvarchar(4000)= null
> > > As
> > >
> > > select Mes, convert( varchar(10), fecha_emision , 103 ) as
fecha_emision
> > > from status_cobros
> > > where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'
> > >
> > > De esta manera solo me devuelve el valor que ponga en ambas


variable,
> pero
> > > no me lo hace individual, es decir si solo pongo una varible que me
> traiga
> > > el vaor por esa sola variable.
> > >
> > > Ejemplo1
> > > @Mes = Enero
> > >
> > > Mes Año
> > > Enero 2003
> > > Enero 2001
> > >
> > > Ejemplo2
> > >
> > > @Mes = Enero
> > > @Año = 2003
> > >
> > > Mes Año
> > > Enero 2003
> > >
> > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#5 Accotto Maximiliano Damian
05/11/2003 - 01:08 | Informe spam
ahh bue es porque esa columna no existe en la BDD!! como se llama la columna
año en la BDD?

porque no mandas todo!! el store completo y como lo ejecutas!!

Pero si año no existe en la BDD te va a tirar ese error

ACCOTTO MAXIMILIANO DAMIAN
GERENTE DE SISTEMAS
UN SALUDO MUY CORDIAL
"Julio rodriguez" escribió en el mensaje
news:%23mF0O$
Hola Maximiliano, le agregue las comillas porque me decia:

Server: Msg 207, Level 16, State 3, Procedure Busqueda_mes_año_cobros,


Line
6
Invalid column name 'Año'.


"Accotto Maximiliano Damian" wrote in
message news:
> isnull('@Año','Año')
>
> ahi hay algo mal!! no sera asi: isnull(@Año,Año)
>
>
>
>
> ACCOTTO MAXIMILIANO DAMIAN
> GERENTE DE SISTEMAS
> UN SALUDO MUY CORDIAL
> "Julio rodriguez" escribió en el mensaje
> news:
> > Cuando lo corro me sale el siguiente error
> >
> > DECLARE @RC int
> > DECLARE @mes nvarchar(40)
> > DECLARE @Año nvarchar(40)
> > SELECT @mes = N'enero'
> > SELECT @Año = N'2004'
> > EXEC @RC = [BDUNR].[dbo].[Busqueda_mes_año_cobros] @mes, @Año
> > DECLARE @PrnLine nvarchar(4000)
> > PRINT 'Stored Procedure: BDUNR.dbo.Busqueda_mes_año_cobros'
> > SELECT @PrnLine = ' Return Code = ' + CONVERT(nvarchar, @RC)
> > PRINT @PrnLine
> >
> > Server: Msg 295, Level 16, State 3, Procedure Busqueda_mes_año_cobros,
> Line
> > 8
> > Syntax error converting character string to smalldatetime data type.
> >
> > where mes=isnull(@mes,Mes) and fecha_emision=isnull('@Año','Año')
> >
> >
> >
> > "Norman A. Armas" wrote in message
> > news:#
> > > where mes=isnull(@mes,Mes) and fecha_emision=isnull(@Año,Año)
> > >
> > >
> > > saludos
> > >
> > >
> > > Norman
> > >
> > >
> > > "Julio" wrote in message
> > > news:
> > > > Hola grupo:
> > > >
> > > > Quiero hacer un Select a una tabla, para eso tengo creado un


stored
> > > > procedure.
> > > > El objectivo de este select es hacer una busqueda que sea:
> > > > por Mes o por año o que cuando utilize las dos variables me


devuelva
> el
> > > > valor que correspondan a la informacion que puse en las dos
varables.
> > > >
> > > > Este es el store procedure:
> > > >
> > > > CREATE Procedure dbo.Busqueda_mes_año_scobros
> > > > @mes nvarchar(4000)= null,
> > > > @Año nvarchar(4000)= null
> > > > As
> > > >
> > > > select Mes, convert( varchar(10), fecha_emision , 103 ) as
> fecha_emision
> > > > from status_cobros
> > > > where mes Like '%'+@mes+'%' and fecha_emision Like '%'+@año+'%'
> > > >
> > > > De esta manera solo me devuelve el valor que ponga en ambas
variable,
> > pero
> > > > no me lo hace individual, es decir si solo pongo una varible que


me
> > traiga
> > > > el vaor por esa sola variable.
> > > >
> > > > Ejemplo1
> > > > @Mes = Enero
> > > >
> > > > Mes Año
> > > > Enero 2003
> > > > Enero 2001
> > > >
> > > > Ejemplo2
> > > >
> > > > @Mes = Enero
> > > > @Año = 2003
> > > >
> > > > Mes Año
> > > > Enero 2003
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida