Escreva o códigoPráticaSQL
Lista sem desconhecidos pelos maiores
Filtrar com IS NOT NULL e ordenar por valor com desempate por cliente.
Devolva as colunas cliente e valor da tabela pedidos só para linhas onde cliente não é NULL, usando IS NOT NULL. Ordene do maior valor para o menor com DESC e, quando o valor empatar, ordene pelo cliente de A a Z com ASC.
Revisa etapa da trilha 6
Solução comentada
Verifique uma tentativa sua para liberar a solução.
SELECT cliente, valor FROM pedidos WHERE cliente IS NOT NULL ORDER BY valor DESC, cliente ASC;O WHERE com cliente e IS NOT NULL remove a linha com cliente igual a NULL. O ORDER BY com valor e DESC ordena do maior para o menor. O segundo critério cliente com ASC desempata valores repetidos.
Erro comum: Esquecer o desempate por cliente deixa a ordem de valores iguais indefinida.
Tabelas
pedidos 10 linhas
| id | cliente | cidade | ano | mes | valor | status |
|---|---|---|---|---|---|---|
| 1 | Ana | Sao Paulo | 2023 | 3 | 150.5 | entregue |
| 2 | Beto | Campinas | 2023 | 1 | 89.9 | pendente |
| 3 | Carla | Sao Paulo | 2022 | 12 | 150.5 | entregue |
| 4 | Diego | Santos | 2023 | 1 | 200 | cancelado |
| 5 | Elisa | Campinas | 2022 | 12 | 45 | entregue |
| 6 | Fabio | Sao Paulo | 2023 | 3 | 89.9 | entregue |
| 7 | NULL | Santos | 2023 | 2 | 120 | pendente |
| 8 | Helena | Campinas | 2022 | 11 | 300 | entregue |
| 9 | Igor | Sao Paulo | 2023 | 2 | 120 | pendente |
| 10 | Julia | Santos | 2022 | 11 | 75.25 | entregue |
Escreva sua solução e verifique quando quiser.