Andreatti 0 Denunciar post Postado Setembro 3, 2012 Opa boa noite galera. Preciso saber como faço uma determinada consulta em um banco de dados. Tenho o campo chamado duracao. Preciso selecionar a ID do registro e a duracao que tenha o valor de duracao maior do que todos os registros no banco. Mais simples: Preciso selecionar o registro com maior valor na duracacao. Nao sei como fazer. Obrigado desde ja. Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Setembro 3, 2012 Bom dia amigo, Se precisa selecionar apenas a maior duração: SELECT MAX(duracao) FROM tabela Se precisa selecionar todas as colunas pode fazer assim: SELECT a.* FROM tabela a WHERE a.duracao = (SELECT MAX(b.duracao) FROM tabela B) SELECT MAX(duracao) FROM tabela Para selecionar ID e duracao: SELECT a.id, a.duracao FROM tabela a WHERE a.duracao = (SELECT MAX(b.duracao) FROM tabela B) E pode aplicar esta lógica para qualquer outra coluna que precise. Espero que ajude, abraço. Compartilhar este post Link para o post Compartilhar em outros sites
ricci ottadnot 4 Denunciar post Postado Setembro 9, 2012 Além da maneira que o Diego postou, você pode fazer sem utilizar subquery. Consulte os registros ordenando o campo `duração` em ordem decrescente e restrinja para trazer apenas o primeiro registro: SELECT a.* FROM tabela a ORDER BY a.duracao DESC LIMIT 1 Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Setembro 9, 2012 Além da maneira que o Diego postou, você pode fazer sem utilizar subquery. Consulte os registros ordenando o campo `duração` em ordem decrescente e restrinja para trazer apenas o primeiro registro: SELECT a.* FROM tabela a ORDER BY a.duracao DESC LIMIT 1 :thumbsup: Dessa forma também é uma saída ^_^ Compartilhar este post Link para o post Compartilhar em outros sites