Array
(
)

Como passar um parâmetro para um ORDER BY ?

Pan7
   - 13 dez 2004

Como utilizar um parametro em uma SP para escolhar uma colula para o ORDER BY ?

A SP abaixo dá erro no ORDER BY:

create procedure SP_Listagem
@dtinicio datetime,
@dtfim datetime,
@ordem int
as
select codigo, nome, valor
from produto
where datacad between @dtinicio and @ dtfim
order by @Ordem

Fer_nanda
   - 14 dez 2004

Tentou colocar o parametro na sua seleção? Tipo se o parametro @ordem é igual ao codigo coloque no seu
#Código

select @Ordem, nome, valor 
from produto 
where datacad between @dtinicio and @ dtfim 
order by @Ordem

Teste e conta o q acontece, até.

Marcus.magalhaes
   - 14 dez 2004

Boa tarde.

Faça da seguinte forma :

create procedure SP_Listagem
@dtinicio datetime,
@dtfim datetime,
@ordem int
as

Declare @comando VarChar(300)
Set @comando = ´select codigo, nome, valor from produto where datacad between ´´´ + Convert(VarChar, @dtinicio) + ´´´ and ´´´ + Convert(VarChar, @dtfim) + ´´´ order by ´ + Convert(VarChar, @Ordem)

Exec (@comando)

Att,

Pan7
   - 14 dez 2004

Marcus,

Quando vi sua solução lembrei do meu curso de SQL !!!

Apanhei um pouco com as aspas, mas deu certo.

Valeu a força.

[] Pan7