• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

14 mensagens neste tópico

Tenta assim:

$sql="SELECT * FROM produtos WHERE familia like '%".$val."%' ORDER BY 'preco' DESC";

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

assim dá erro:

Warning: sprintf(): Too few arguments in /home/pixelpro/public_html/KPC/cat.php on line 297

é onde vai buscar o sql

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

SELECT * FROM 'produtos' WHERE 'familia' LIKE '$val' ORDER BY 'preco' DESC

Experimenta lá...

PS: Isso tem de ser com o LIKE?

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já experimentaste o meu código? Se deu erro tenta antes:

SELECT * FROM produtos WHERE familia = '$val' ORDER BY preco DESC

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Este post está na secção errada, isto nada tem a ver com PHP mas com base de dados.

A query

"SELECT * FROM produtos WHERE familia = '$val' ORDER BY preco DESC" está sintaticamente correcta, se o resultado não vem por ordem o problema está noutro lado...

Qual é a estrutura da tabela? Tens algum índice no campo 'preco'?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Como é que são os valores da coluna familia e da coluna precos ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

sim, do tipo vchar.

Isto é a resposta a que pergunta?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

do king ... Como é que são os valores da coluna familia e da coluna precos ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

do king ... Como é que são os valores da coluna familia e da coluna precos ?

Como é que vai ser resposta para minha pergunta se tu respondeste antes de eu perguntar ?  :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

do king ... Como é que são os valores da coluna familia e da coluna precos ?

Como é que vai ser resposta para minha pergunta se tu respondeste antes de eu perguntar ?  :hmm:

Boa questão! :D

De qualquer forma é possível que já tenha descoberto o "mistério".

Se a coluna preço é to tipo varchar então:

1. sendo character, então a avaliação da ordem é feita através dos caracteres ASCII e não pelo valor númerico, havendo, por exemplo, espaços no valor impacta directamente a ordenação.

2. logo: o tipo de dados está errado, deveria ser algo como numeric(9,2).

Troca para um tipo numérico, corre a query e o teu problema está resolvido.

Nota: atenção ao desenho e arquitectura das BDs, há que pensar e ter bom senso de forma a evitar erros e maus desenhos que impactam directamente o desenvolvimento e a performance de um sistema.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora