NATURAL JOIN

Tags:    databaser

Er der nogen der kan forklare mig hvorfor:

SELECT DISTINCT maker FROM products NATURAL JOIN printer;

ikke virker når følgende virker:

SELECT DISTINCT maker FROM products INNER JOIN printer USING (model)
og
SELECT DISTINCT * FROM products A, printer B WHERE A.model=B.model

NATURAL JOIN virker ellers fint på lignende relationer.



Der findes både et felt model i products og printer.



Indlæg senest redigeret d. 22.11.2009 20:30 af Bruger #5097
2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Hej Theis

Jeg har også diskret mat og databaser i dette semester, men er ikke på software, men mattek :)
Din forespørgsel med natural join virker som den skal, men giver en tom relation som resultat, fordi printer-relationen og products-relationen begge har et felt med navnet type. Så i din natural join forespørgsel beder du om alle tupler med samme værdi i både model- og type-feltet, og dem er der ikke nogle af...

mvh Anders



Hej Anders.
Ahh hvor sjovt, at der er nogle fra studiet her inde. He he, men ja det kan man bare se. Det har du selvfølgelig helt ret. Typisk åndsvag fejl som man overser.
Så bruger jeg bare INNER JOIN.



t