452 votes

Requête SQL retournant les données de plusieurs tables

Je voudrais savoir ce qui suit :

  • comment obtenir des données de plusieurs tables dans ma base de données ?
  • quels sont les types de méthodes pour y parvenir ?
  • que sont les unions et les syndicats et en quoi sont-ils différents les uns des autres ?
  • Quand dois-je utiliser chacun d'eux par rapport aux autres ?

Je prévois de l'utiliser dans mon application (par exemple - PHP), mais je ne veux pas exécuter plusieurs requêtes contre la base de données, quelles options ai-je pour obtenir des données de plusieurs tables dans une seule requête ?

Note : J'écris ceci car j'aimerais pouvoir faire un lien vers un guide bien écrit sur les nombreuses questions que je rencontre constamment dans la file d'attente PHP, afin de pouvoir faire un lien vers ce guide pour plus de détails lorsque je publie une réponse.

Les réponses couvrent les points suivants :

  1. Partie 1 - Joints et unions
  2. Partie 2 - Sous-requêtes
  3. Partie 3 - Trucs et astuces et code efficace
  4. Partie 4 - Sous-requêtes dans la clause From
  5. Partie 5 - Un mélange d'astuces de John

10voto

Anton Chan Points 21

J'espère que vous trouverez les tableaux en lisant ce document :

jsfiddle

mysql> show columns from colors;                                                         
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+           
| id    | int(3)      | NO   | PRI | NULL    | auto_increment |
| color | varchar(15) | YES  |     | NULL    |                |
| paint | varchar(10) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X