Sie sind nicht angemeldet.

migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

21

29.10.2003, 18:14

Moin,

wie kann ich denn in Aufgabe 2e) eine JOIN USING-Klausel sinnvoll einsetzen? Dies macht doch nur zwischen den Relationen directs und rating Sinn, oder?
Ich kam bisher nicht auf die Lösung und damit ich bin ich leider nicht allein. ?(
So helft mir doch bitte! :rolleyes:
tar: Anlegen eines leeren Archivs wird feige verweigert.

NullAhnung

Erfahrener Schreiberling

  • »NullAhnung« ist weiblich

Beiträge: 332

Registrierungsdatum: 28.04.2003

22

29.10.2003, 18:20

Und wie mach ich das? Aber sonst ist das schon richtig so?
DAs mit der WHERE-Clausel krieg ich irgendwie nicht hin. Was ist denn mit den VOTES gemeint? Sind das schon die Stimmen mit denen gewonnen oder verloren wurde oder muß ich noch die Stimmen vom Verlierer mit der höchsten Stimmenzahl von denen des Gewinners abziehen? Wenn ja, wie mach ich das?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »NullAhnung« (29.10.2003, 19:31)


ap

Erfahrener Schreiberling

Beiträge: 269

Registrierungsdatum: 14.02.2002

Beruf: Student ;-)

23

29.10.2003, 18:25

Zitat

Original von miguwie kann ich denn in Aufgabe 2e) eine JOIN USING-Klausel sinnvoll einsetzen? Dies macht doch nur zwischen den Relationen directs und rating Sinn, oder?


Richtig. JOIN USING zwischen directs und Rating, andere benötigte Tabellen per JOIN ON. Ich hatte auch erst gezweifelt, aber in der Aufgabe steht nur, dass man sich INSBESONDERE mit JOIN USING auseinandersetzen soll, nicht dass man nur dieses verwenden darf (also: es soll mindestens einmal in der Lösung vorkommen).
Who the fuck is General Failure and why does he read my hard disk? ?(

Informatik Minister

Senior Schreiberling

  • »Informatik Minister« ist männlich

Beiträge: 1 234

Registrierungsdatum: 11.12.2001

24

29.10.2003, 20:04

Zitat

Original von ap
Mal zum Abgleich:

2a) 1 Row selected
2b) 29 Rows selected
2c) 21 Rows selected
2d) 1 Row selected (Ott, Fred)
2e) 20 Rows selected

Kann das jemand verifizieren oder falsifizieren?


Ich habe
2a) 1
2b) 58
2c) 21
2d) 1
2e) 38

... und schon weggeschickt, also lasst mich doch in Ruhe :(
Ich glaube an mich.
"Fliegenpilze! Löwen!! Das Leben ist gefährlich." -- www.katzundgoldt.de

cowhen

Muuuh!

  • »cowhen« ist männlich

Beiträge: 1 374

Registrierungsdatum: 13.12.2001

25

29.10.2003, 21:28

Ich hab alles so wie ap.
Und auch schon weggeschickt :P
plenty of time to relax when you are dead

migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

26

29.10.2003, 23:23

Zitat

Original von cowhen
Ich hab alles so wie ap.


Joho, gleich werd ich auch bei 2e) das Ergebnis haben. Da bin ich ganz zuversichtlich.
Denn:

Zitat

Original von ap
Richtig. JOIN USING zwischen directs und Rating, andere benötigte Tabellen per JOIN ON. Ich hatte auch erst gezweifelt, aber in der Aufgabe steht nur, dass man sich INSBESONDERE mit JOIN USING auseinandersetzen soll, nicht dass man nur dieses verwenden darf (also: es soll mindestens einmal in der Lösung vorkommen).


Was mir durchaus bereits klar war, aber das Stellen von Fragen muss ich wohl noch erlernen. :rolleyes:
Vielen Dank aber für die Hilfe! :)

Leider weiß ich noch nicht ganz, wie ich die ganzen vielen JOIN-Statements komponieren soll. Mal schaun. Ich hab noch gut zehn Stunden Zeit. ;)
Vielleicht kann mir bis dahin ja noch jemand helfen.

Noch etwas:
Wenn man JOIN relation USING (column) verwendet, darf man "column" nicht mehr als "Qualifier" in etwaigen ON-Klauseln verwenden. Genau darüber stolpere ich hier die ganze Zeit. :(
tar: Anlegen eines leeren Archivs wird feige verweigert.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »migu« (29.10.2003, 23:36)


AnyKey

Erfahrener Schreiberling

Beiträge: 451

Registrierungsdatum: 11.12.2001

Wohnort: H-Town

Beruf: Student

27

30.10.2003, 00:21

sauber cowhen ;)

ich habs auch wie ap:

a) 17
b) 5
c) 14
d) 10
e) 42
a) 1
b) 29
c) 21
d) 1
e) 20

"Der Mensch braucht Schubladen." -- Any Key

migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

28

30.10.2003, 00:24

Zitat

Original von AnyKey
e) 20


Was ist der Trick bei 2e?
JOIN USING geht hier gar nicht. ?( X( :(
tar: Anlegen eines leeren Archivs wird feige verweigert.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »migu« (30.10.2003, 00:24)


migu

free rider

  • »migu« ist männlich

Beiträge: 2 643

Registrierungsdatum: 11.12.2001

Wohnort: Hannover

Beruf: Developer

29

30.10.2003, 08:04

Zitat

Original von migu

Zitat

Original von AnyKey
e) 20


Was ist der Trick bei 2e?
JOIN USING geht hier gar nicht. ?( X( :(


Mir wurde geholfen! :) Der Trick ist, statt
SELECT ...
FROM rating
JOIN directs USING (movie)
JOIN person
ON (directs.director=person.id)
JOIN movie
ON (directs.movie=movie.id)
AND ...

SELECT ...
FROM rating
JOIN directs USING (movie)
JOIN person
ON (directs.director=person.id)
JOIN movie
ON (movie=movie.id)
AND ...

zu schreiben. Jetzt ist es mir klar, warum man das so macht. "movie" wurde mittels USING der Ergebnisrelation zugeordnet, weshalb man nicht mehr explizit auf das Attribut "moving" einer einzelnen Relation zugreifen darf. Das verbietet USING.

Falls es noch jemandem hilft... :)
tar: Anlegen eines leeren Archivs wird feige verweigert.