Menu
Coddy logo textTech

CASE in ORDER BY

Fa parte della sezione Oltre le basi del percorso SQL di Coddy. Lezione 2 di 27.

CASE non serve solo per SELECT. Puoi inserirlo in ORDER BY per ordinare le righe secondo una regola personalizzata che le sole colonne non possono esprimere.

SELECT name, status
FROM tickets
ORDER BY
    CASE status
        WHEN 'urgent' THEN 1
        WHEN 'high'   THEN 2
        WHEN 'normal' THEN 3
        ELSE 4
    END

Nota la forma più breve: CASE column WHEN value THEN .... Equivale a WHEN column = value. Usa quella che risulta più leggibile.

challenge icon

Sfida

Facile

Tabelle e colonne disponibili:

  • tasks: id, title, priority

Restituisci title e priority, ordinati in modo che 'critical' venga prima, poi 'high', poi 'low' e tutto il resto per ultimo. A parità di priorità, ordina alfabeticamente per title.

Provalo tu

SELECT title, priority
FROM tasks
ORDER BY
    -- Sostituisci l'ordinamento segnaposto qui sotto con un'espressione CASE che
    -- ordini le righe come descritto nell'esercizio, poi risolva i casi di parità in ordine alfabetico
    id
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Oltre le basi

Esercitati da solo: Playground SQL