# Jointure

> Opération SQL combinant les lignes de plusieurs tables selon une condition de correspondance, typiquement entre une clé primaire et une clé étrangère.

- Auteur : Clément Hadrot
- Publié le : 2026-09-25
- Mis à jour le : 2026-09-25
- URL : https://wpmoderne.dev.wordpress-developpement.fr/lexique/jointure/

Un article et ses métadonnées vivent dans deux tables séparées : impossible d'afficher un titre accompagné de sa note de lecture sans réunir ces deux sources en une seule requête. C'est précisément ce que permet cette opération, au cœur de quasi toute requête un peu élaborée sur une base relationnelle.

## INNER, LEFT et leur usage dans WordPress

Une jointure `INNER JOIN` ne conserve que les lignes présentes des deux côtés, tandis qu'une `LEFT JOIN` conserve toutes les lignes de la table de gauche même sans correspondance à droite, en complétant de `NULL`. La classe `WP_Query` construit elle-même des jointures internes vers `wp_postmeta` ou `wp_term_relationships` dès qu'on utilise `meta_query` ou `tax_query` ; le filtre `posts_join` permet d'en ajouter une supplémentaire à la main.

## Exemple

```
SELECT p.post_title, m.meta_value AS note
FROM wp_posts p
INNER JOIN wp_postmeta m
  ON m.post_id = p.ID AND m.meta_key = 'note_lecteur'
WHERE p.post_status = 'publish';
```

## Bon à savoir

- Sur une base volumineuse, joindre une table sans condition sur une colonne indexée produit un plan d'exécution coûteux : vérifiez toujours l'index avant d'optimiser autre chose.
- Le filtre `posts_join` de `WP_Query` doit être combiné avec `posts_where` et souvent `posts_distinct` pour éviter les doublons de résultats liés à des correspondances multiples.
- Une jointure n'est pas une fusion de structure : les colonnes des deux tables restent distinctes dans le résultat, simplement juxtaposées ligne par ligne.
- Une `RIGHT JOIN` existe symétriquement à la `LEFT JOIN`, mais reste rarement utilisée en pratique : la plupart des développeurs préfèrent inverser l'ordre des tables et n'écrire que des jointures gauches, plus lisibles à la relecture.
