Leçon 8 / 9 — Chapitre 10: Mise en pratique : ressources humaines
JSON : des compétences flexibles par collaborateur
Comme au chapitre 7, le type JSON convient à une information dont la forme varie d'un collaborateur à l'autre — ici, la liste de compétences et l'expérience, potentiellement différentes pour chacun.
SELECT nom,
'{"langages": ["SQL", "Python"], "annees_experience": 5}'::json ->> 'annees_experience' AS experience
FROM collaborateurs WHERE id = 4;
Pour Ibrahim (id 4), cette structure JSON illustrative donne, via ->>, le texte '5' pour annees_experience. ->'langages' (avec une seule flèche) renverrait, lui, ["SQL", "Python"] au format JSON — un tableau, pas une valeur simple à extraire directement en texte de la même façon.
À retenir :
- Une information dont la structure varie selon la ligne (ici, un nombre de compétences différent par collaborateur) est un bon candidat pour une colonne JSON plutôt que plusieurs colonnes fixes.
->>reste adapté pour extraire une valeur simple (texte ou nombre) ; une valeur elle-même composée (comme un tableau JSON) se manipule différemment, avec->et les fonctions JSON dédiées.
À vous de jouer : que retournerait '{"langages": ["SQL", "Python"], "annees_experience": 5}'::json ->> 'langages'; — une valeur simple, ou une structure plus complexe convertie en texte ?
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 80 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès