Aloysio Coutinho 0 Denunciar post Postado Março 4, 2021 Boa tarde pessoAll, Tenho uma tabela com uma coluna que conta o número de slots de memória que um servidor tem (NUMSLOT) e outra (TYPE) que diz quais estão ocupados com o tipo de memória e, quando não tem nenhum pente vem com o conteúdo 'Empty slot'. Queria pegar, em uma única query o número total de slots (esse estou pegando fácil com um "count(NUMSLOT)") e a contagem dos slots vazios. Esse registro estou tendo dificuldades para extrair. Quem conseguiria me ajudar com esta lógica? De ante mão agradeço a colaboração. Atenciosamente, Compartilhar este post Link para o post Compartilhar em outros sites
Aloysio Coutinho 0 Denunciar post Postado Março 4, 2021 Já tentei com CASE e IF, conforme demonstrado abaixo (nesse caso está com o CASE), mas ele está contando todos os registros, ignorando as condições: select replace(format(SUM(capacity),0),',','.') as RAM, HARDWARE_ID, count(NUMSLOTS) as SLOTS, count(CASE WHEN TYPE = 'Empty slot' THEN 1 ELSE 0 END) as LIVRES from memories group by HARDWARE_ID Só lembrando que a minha base na verdade é um MariaDB 10.3.17. Abs, Compartilhar este post Link para o post Compartilhar em outros sites
Jack Oliveira 1 Denunciar post Postado Março 5, 2021 Tente da seguinte forma SELECT SUM( IF( `ativo`='s', 1, 0 ) ) AS ativos, SUM( IF( `ativo`='s', 0, 1 ) ) AS inativos, COUNT(*) AS total FROM tabela Veja funcionando Compartilhar este post Link para o post Compartilhar em outros sites
Aloysio Coutinho 0 Denunciar post Postado Março 8, 2021 Em 05/03/2021 at 17:48, Jack Oliveira disse: Tente da seguinte forma SELECT SUM( IF( `ativo`='s', 1, 0 ) ) AS ativos, SUM( IF( `ativo`='s', 0, 1 ) ) AS inativos, COUNT(*) AS total FROM tabela Veja funcionando Bom dia Jack, Cara, tão simples assim. Só queria entender porquê o "count" não funcionou, mas valeu. Deu certo! Compartilhar este post Link para o post Compartilhar em outros sites
Aloysio Coutinho 0 Denunciar post Postado Março 10, 2021 Hey Jack, muito obrigado mesmo pela dica. Estou tentando agradecer através dos ícones, mas estou recebendo o seguinte erro. Compartilhar este post Link para o post Compartilhar em outros sites
Jack Oliveira 1 Denunciar post Postado Março 10, 2021 3 minutos atrás, Aloysio Coutinho disse: Hey Jack, muito obrigado mesmo pela dica. Estou tentando agradecer através dos ícones, mas estou recebendo o seguinte erro. Por nada amigo... sucesso pra ti... Compartilhar este post Link para o post Compartilhar em outros sites