phpando 0 Denunciar post Postado Agosto 31, 2009 Olá Pessoal. Sigo em minha saga de e-commerce. Já resolvi problemas de consulta somando estoque, etc. Agora caí em outro problema. Como listar os resultados da consulta por NOME (varchar - ASC) e ESTOQUE (int - DESC)? Tenho os produtos: 1 - Algodão - 5 2 - Cotonete - 0 3 - Toalha - 8 4 - Almofada - 2 5 - Sabonete - 0 Se utilizo NOME ASC, ESTOQUE DESC o resultado é o seguinte: 1 - Algodão - 5 4 - Almofada - 2 2 - Cotonete - 0 5 - Sabonete - 0 3 - Toalha - 8 Se utilizo ESTOQUE DESC, NOME ASC o resultado é o seguinte: 3 - Toalha - 8 1 - Algodão - 5 4 - Almofada - 2 2 - Cotonete - 0 5 - Sabonete - 0 O resultado desejado seria: 1 - Algodão - 5 4 - Almofada - 2 3 - Toalha - 8 2 - Cotonete - 0 5 - Sabonete - 0 O que preciso é ordenar os resultados por NOME ASC, colocando os produtos com ESTOQUE 0 no final da listagem também em ordem alfabética. Há como fazer isto via consulta ou somente se fizer 2 consultas? Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 31, 2009 Tente : ORDER BY (CASE WHEN ESTOQUE > 0 THEN 1 ELSE O END) DESC,NOME ASC, ESTOQUE DESC Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Agosto 31, 2009 Da pra fazer com UNION. Compartilhar este post Link para o post Compartilhar em outros sites
phpando 0 Denunciar post Postado Agosto 31, 2009 Tente : ORDER BY (CASE WHEN ESTOQUE > 0 THEN 1 ELSE O END) DESC,NOME ASC, ESTOQUE DESC Perfeito Motta. Valeu mesmo! Compartilhar este post Link para o post Compartilhar em outros sites