Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

natalia

Escolher order by

Recommended Posts

Oi pessoal, gostaria de saber como fazer esse order by. Os produtos que são mostrados p/ o cliente ele pode clicar em ordernar por marca (asc/desc) , preco (asc/desc), etc. Alguém pode me ajudar, eu tentei fazer mas não consegui, nem sei se é assim, mas aí vai o código:varNome = Request("N")varModelo = Request("M")varPreco = Request("P")varOrdem = " ORDER BY Produto.Nome_Prod ASC "If varNome = "ASC" Then varOrdem = " ORDER BY Produto.Nome_Prod ASC"If varNome = "DESC" Then varOrdem = " ORDER BY Produto.Nome_Prod DESC"If varModelo = "ASC" Then varOrdem = " ORDER BY Marca.Nome_Marca ASC"If varModelo = "DESC" Then varOrdem = " ORDER BY Marca.Nome_Marca DESC"If varPreco = "ASC" Then varOrdem = " ORDER BY Produto.Preco ASC"If varPreco = "DESC" Then varOrdem = " ORDER BY Produto.Preco DESC"strResult = " SELECT SubCategoria.Codigo_Subcat, SubCategoria.Nome_Subcat, Produto.Codigo_Prod, " strResult = strResult & " Produto.Nome_Prod, Produto.Preco, Produto.Peso, Produto.Disponivel, Produto.Garantia_Prod, " strResult = strResult & " Marca.Codigo_Marca, Marca.Nome_Marca FROM SubCategoria INNER JOIN Produto "strResult = strResult & " ON SubCategoria.Codigo_Subcat = Produto.Codigo_Subcat INNER JOIN Marca "strResult = strResult & " ON Marca.Codigo_Marca = Produto.Codigo_Marca "strResult = strResult & " WHERE SubCategoria.Codigo_Subcat = " & varSubcat & " AND Marca.Codigo_Marca = " & varFabric & varOrdem ...<td width="10"><a href="rapida.asp?N=ASC"><img src="<%=application("path")%>images/setinha-cima.gif" width="9" height="8" border="0"></a></td><td width="10"><a href="rapida.asp?N=DESC"><img src="<%=application("path")%>images/setinha-baixo.gif" width="9" height="8" border="0"></a></td> </tr>...Alguém sabe?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi natália, experimenta colocar assim o seu varOrdem:varOrdem = " ORDER BY Produto.Nome_Prod " & Request("N")Espero que seja isso...[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Neste caso é melhor utilizar o select case para ordernar os dados, veja abaixo um pequeno exemplo.

 

Select Case request.QueryString("s")

case 1 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by montadora.nome"

case 2 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by veiculo.carro"

case 3 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by veiculo.placa"

case 4 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by veiculo.cor"

case 5 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by veiculo.comb"

case 6 CarrosSQL="SELECT veiculo.id as idveiculo, veiculo.carro as carro, veiculo.preco as preco, veiculo.placa as placa, veiculo.cor as cor, veiculo.imagem, veiculo.montadora, veiculo.comb as combustivel, montadora.id, montadora.nome as montnome, montadora.logotipo as logotipo FROM montadora INNER JOIN veiculo ON montadora.id = veiculo.montadora order by veiculo.preco"

 

End Select

 

O comando só é executado lá em baixo. Neste caso eu apenas estou dando a posssibilidade do suário ordenar pelas colunas 6 opções, no seu caso serão mais opções, portanto basta acrescentar mais case.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.