*   >> Lecture Éducation Articles >> science >> la programmation

Mysql: conception relationnelle Tables

OÙ t1.id = t2.id; + --- - + -------- + -------- + ---- + | id | lettre | id | lettre | + ---- + -------- + -------- + ---- + | 1 | A | 1 | X || 2 | B | 2 | Y || 3 | C | 3 | Z | + ---- + ---- -------- + -------- + + 3 rows in set (0.00 sec)


Prenez une moment pour regarder en arrière à la suite du produit cartésien, et vous verrez que les trois lignes retournées par l'exemple précédent apparaissent, mais les autres lignes ont été mis au rebut.



Rejoignez Types

Une jointure qui implique une condition dans laquelle les colonnes de deux tables sont spécifiées comme égale est connu comme un équijointure ou jointure interne. Vous pourrez en apprendre davantage sur d'autres types de jointures dans la leçon 12, "rel =" "class =" nofollow exlnk "target =" _ blank "Création rejoint avancée.

"



Clés étrangères

Même si votre définition de la table a une clé étrangère définie (vous apprendrez comment faire cela dans la leçon 17), vous devez inclure une clause WHERE qui spécifie la condition de jointure. La relation doit être utilisé pour une jointure ne sont jamais stockées au niveau de la base de données.

Rejoindre plusieurs tables

Vous pouvez vous joindre plus de deux tables dans une requête en spécifiant tous les noms de table dans la clause.

L'exemple suivant utilise les relations entre les ordres, order_lines et produits tables pour produire un historique des commandes pour un client particulier:

 mysql> SELECT o.order_id, o.order_date, l.quantity, p.name -> o des ordres, l order_lines, produits p -> OÙ o.order_id = l.order_id -> ET p.product_code = l.product_code -> ET o.customer_code = 'SciCorp' -> ORDER BY o.

order_date; + - -------- + ------------- + ---------- + ---------------- - + | order_id | order_date | quantité | Nom | + ---------- + ------------- + ---------- + ----------- ------- + | 3 | 2006-01-23 | 16 | Petit produit || 4 | 2006-02-02 | 16 | Petit produit || 4 | 2006-02-02 | 10 | Grand produit || 5 | 2006-02-05 | 10 | Produit Moyen || 5 | 2006-02-05 | 10 | Grand produit | + ---------- + ------------- + ---------- + ---------- -------- + 5 rows in set (0.

00 sec)


Pour effectuer une équijointure sur plusieurs tables, une condition dans la clause WHERE doivent spécifier une relation de chaque table à une autre table . Dans cet exemple, il existe des relations entre les ordres et order_lines, et entre order_lines et pr

Page   <<  [1] [2] [3] [4] [5] >>

Copyright © 2008 - 2016 Lecture Éducation Articles,https://lecture.nmjjxx.com All rights reserved.