Ir para o conteúdo
watt

ERRO No Sql

Mensagens Recomendadas

AriOps    0
AriOps

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

Experimenta lá...

PS: Isso tem de ser com o LIKE?

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
AriOps    0
AriOps

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

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

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
M6    76
M6

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'?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
kingless    0
kingless

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:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
M6    76
M6

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.

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


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade