*   >> läser Utbildning artiklar >> science >> programming

Mysql: Förståelse Relations Tables

Y || 3 | Z | + ---- + -------- + 3 rader i set (0,00 sek)

Omdömen

Nu utföra en koppling på de två borden, utan villkor som anges

 mysql> SELECT * -> FRÅN T1, T2, + ---- + -------- + ---- + -------- + | id | brev | id | brev | + ---- + ---- --- + ---- + -------- + | 1 | A | 1 | X || 2 | B | 1 | X || 3 | C | 1 | X || 1 | A | 2 | Y || 2 | B | 2 | Y || 3 | C | 2 | Y || 1 | A | 3 | Z || 2 | B | 3 | Z || 3 | C | 3 | Z | + ---- + -------- + ---- + -------- + 9 rader i set (0,00 sek) 

Omdömen

När du kan se, är varje rad från t1 i kombination med varje rad från t2.

Tre rader i varje tabell producerar en join, resulterade i totalt nio par av poster. Detta är känt som en kartesisk produkt, och det är sällan det resultat du vill ha från en fråga. Omdömen

Omdömen

SELECT * Omdömen

Lägg märke till hur SELECT * notation i det föregående exempel orsakade varje kolumn från båda tabellerna som ska returneras. Som ett resultat erhölls två kolonner namnges ID och två namngivna brev returneras. Dessa kolumner hör till tabellerna i den givna ordningen i FROM-satsen.



Det totala antalet rader som returneras är produkten av antalet rader i varje tabell. Du kan föreställa sig hur stor den resulterande datamängden kan växa när enskilda tabeller innehåller ett stort antal rader själva. Omdömen

Omdömen

Cross Fogar

En cartesianska produkt kallas ibland ett kors gå. Omdömen

Omdömen

Lägga till en WHERE tillstånd till detta gå instruerar MySQL för att filtrera bort paren av poster för vilka det inte finns något samband mellan uppgifterna. Detta är huvuddelen av de rader som skulle returneras i en kartesisk produkt.

Förutsatt en relation mellan id kolumnen i varje tabell, skarven sedan ger följande resultat:

 mysql> SELECT * -> FRÅN T1, T2 -> VAR t1.id = t2.id; + --- - + -------- + ---- + -------- + | id | brev | id | brev | + ---- + -------- + ---- + -------- + | 1 | A | 1 | X || 2 | B | 2 | Y || 3 | C | 3 | Z | + ---- + -------- + ---- + -------- + 3 rader i set (0,00 sek) 

Omdömen

Ta en ögonblick att se tillbaka på resultatet av den cartesianska produkt, och du kommer se att de tre raderna som returneras av föregående exempel visas, men de andra raderna har tagits bort.

Omdömen

Omdömen

Gå typer

En gå som innebär ett tillstånd där kolumner i två tabeller anges som lika är känd som en equijoin eller inre koppling. Du lär dig om andra typer av kopplingar i Lektion 12, "rel

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

Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.