Jump to content


primo

Member Since 24/08/2003
Offline Last Active 08/06/2013, 18:37
-----

Posts I've Made

In Topic: Consulta Mysql

04/06/2013, 23:36

Entendi,

Nesse caso, talvez seria interessante você ter uma tabela com os tipos de combustíveis (no caso Etanol e Gasolina), e conforme o usuário cadastra, você cria os vínculos baseados no ID (seja 1:N ou N:N), assim vc evita consumo de banco e centraliza os combustíveis.

De qualquer forma, o que vc precisa fazer é usar a mesma consulta que usou no primeiro post, basta adicionar ao final da query um group by vinculando o campo de combustível assim ele agrupa por dados idênticos:

$sql = mysql_query("SELECT combustivel FROM consumo WHERE usuario = '" . $user  . "' GROUP BY combustivel")

Espero ter ajudado.

Abs

Post movido para Fórum de MySQL.


Verdade cara, às vezes dá um branco. Basta colocar GROUP BY. Valeu, obrigado por esclarecer.

Quanto ao relacionamento de tabelas, é uma opção realmente bem melhor, mas acho que vou deixar assim porque senão eu posso complicar as coisa se algo der errado na manipulação das tabelas e dados.
Nos próximos trabalhos não vou esquecer disso, aliás, vou antes modelar os use cases pra depois pensar no sistema. Fazer as coisas nas coxas é isso que dá.
Mais uma vez obrigado.
Abraço,

In Topic: Consulta Mysql

04/06/2013, 19:18

Nesse caso o correto seria você verificar se já está cadastrado e não permitir o usuário cadastrar a mesma coisa várias vezes. Até mesmo para evitar lixo no seu banco que pode tornar as consultas mais lentas e também te atrapalhar na mineração de dados. Fora que como você está adicionando em options, você pretende vincular alguma coisa ao combustível, certo? O vinculo será no ID, e não no label, então você tem vários IDs para o mesmo label.

Abs


Na verdade as únicas opções possíveis são Gasolina e Etanol por validação, e o usuário pode cadastrar quantos consumos de combustivel ele quiser, por isso eu tenho varias linhas com Gasolina e Etanol. (Além do combustível eu tenho outras variáveis, como trajeto, motor, etc...)

O que eu quero fazer é o seguinte: uma sequencia de combos as quais o usuario vai selecionar pra filtrar sua busca na tabela. Sabe quando a gente cria filtros no excel? é o que eu preciso.

Num desses combos, eu preciso das opções de combustível que o usuário cadastrou, ou Gasolina, ou Etanol, ou ambos. Eu poderia simplesmente fazer isso em html puro, porém se o usuário não usou Gasolina nenhuma vez, essa opção vai estar sobrando no combobox, e se for selecionada vai gerar uma busca vazia. É por isso que eu gostaria de exibir neste combo apenas o tipo de combustível que o usuário cadastrou. Aí é que não estou conseguindo realizar a consulta pra exibir apenas um resultado de cada.

Se o usuário usou Gasolina três vezes, minha consulta está gerando três <option>Gasolina</option> como valor, quando eu preciso de apenas um. Queria saber como faz essa consulta para gerar apenas um valor caso haja mais de um no banco.

A imagem vai exemplificar melhor o que eu preciso:

Posted Image

Como o usuário cadastrou seu consumo em Etanol, eu gostaria de exibir apenas "Etanol" no combo, já que a opção Gasolina seria irrelevante.

IPB Skin By Virteq