SQL Exercici – Classifica cada empleat segon el seu nivell salarial

Exercici pràctic amb SQL i PostgreSQL per calcular el salari mitjà i el nombre d’empleats per departament utilitzant una sola consulta amb JOIN, GROUP BY, AVG() i COUNT(). Inclou comentaris línia per línia per entendre la lògica d’agregació de dades relacionades.

Classify Salary Levels with SQL CASE – Practical PostgreSQL Example

🧭 Rol: Exercice
🗂️ Àrea: Data Science
📅 Any: 2025
🧩 Stack: SQL
📝 Crèdits: deGalaLab

Resultats / Insights

| full_name | salary | nivell_sou |
| ----------- | ------ | ---------- |
| Pau Solé | 68000 | Alt |
| Jordi Riu | 61000 | Alt |
| Anna Serra | 52000 | Mitjà |
| Marta Vidal | 39000 | Baix |

Crea una columna addicional anomenada nivell_sou:

Enunciat

  • Si el salari és > 60000 → 'Alt'
  • Entre 40000 i 60000 → 'Mitjà'
  • Si és < 40000 → 'Baix'
Icona minimalista estil DeGalaLab que representa la inserció manual d’un codi JSON-LD a una entrada SQL, amb símbols de codi i funcions d’agregació. / Minimalist DeGalaLab-style icon representing manual insertion of JSON-LD code in an SQL post, featuring code and aggregation symbols.

Solució

SELECT 
    full_name,
    salary,
    CASE
        WHEN salary > 60000 THEN 'Alt'
        WHEN salary BETWEEN 40000 AND 60000 THEN 'Mitjà'
        ELSE 'Baix'
    END AS nivell_sou
FROM emp
ORDER BY salary DESC;

Proves extra:

  1. Executa cadascuna de les consultes al Query Tool.
  2. Canvia valors de salaris i torna a provar: veuràs com canvien els resultats de les mitjanes i nivells.
  3. Si vols guardar les teves queries, fes File → Save Query (et crea un .sql que pots reutilitzar).

Pàgina de Referència

SQL: Structured Query Language