SORRY
Re: Klausurabufgaben des letzten Jahres
blöd
Zuletzt geändert von jogo am 7. Sep 2009 00:37, insgesamt 1-mal geändert.
Re: Klausurabufgaben des letzten Jahres
also zu b)
wäre es meiner meinung nach so
SELECT L.ID, COUNT(E.ISBN)
FROM Exemplar E, Leser L
WHERE E.Leser = L.ID
GROUP BY L.ID;
bei den anderen schau ich grade nochmal
wäre es meiner meinung nach so
SELECT L.ID, COUNT(E.ISBN)
FROM Exemplar E, Leser L
WHERE E.Leser = L.ID
GROUP BY L.ID;
bei den anderen schau ich grade nochmal
................
.........
Zuletzt geändert von Diablo am 7. Sep 2009 08:13, insgesamt 2-mal geändert.
Re: Klausurabufgaben des letzten Jahres
also zu a) würde ich sagen:
Zuletzt geändert von ^Lara^ am 7. Sep 2009 08:13, insgesamt 2-mal geändert.
-
- Endlosschleifenbastler
- Beiträge: 169
- Registriert: 10. Nov 2005 19:28
- Wohnort: Darmstadt
Re: Klausurabufgaben des letzten Jahres
Hast du denn noch eine andere Klausur als die die auf der Seite verlinkt ist? Falls ja wärs cool wenn du die hochladen könntest.
Zur Aufgabe, ich würde das so machen (weiß aber nicht ob's stimmt ^^):
a)
select vname, nname
form leser l, entleihung e
where l.alter < 35
and l.id = e.leser
and e.isbn='...';
P_vname, nname (O_isbn='...' ^ alter < 35 (leser X_leser=id entleihung))
{t^(2) | (El^(4)) (Ee^(3)) (leser(l) ^ entl.(e) ^ t[1] = l[2] ^ t[2] = l[3] ^ l[1] = e[3] ^ e[1] = '...' ^ l[4] < 35)}
b)
select l.id, count(e.isbn)
from leser l, entl. e
where l.id = e.leser
group by l.id;
PS: ich hoffe man versteht meinen ra syntax
Zur Aufgabe, ich würde das so machen (weiß aber nicht ob's stimmt ^^):
a)
select vname, nname
form leser l, entleihung e
where l.alter < 35
and l.id = e.leser
and e.isbn='...';
P_vname, nname (O_isbn='...' ^ alter < 35 (leser X_leser=id entleihung))
{t^(2) | (El^(4)) (Ee^(3)) (leser(l) ^ entl.(e) ^ t[1] = l[2] ^ t[2] = l[3] ^ l[1] = e[3] ^ e[1] = '...' ^ l[4] < 35)}
b)
select l.id, count(e.isbn)
from leser l, entl. e
where l.id = e.leser
group by l.id;
PS: ich hoffe man versteht meinen ra syntax

Re: Klausurabufgaben des letzten Jahres
und warum braucht man das GROUP BY ???
Re: Klausurabufgaben des letzten Jahres
An sich ginge es auch ohne - so ists aber schöner: du erhältst, auch wenn ein Leser das Buch mehrmals ausgeliehen hat, nur eine Ergebniszeile pro Leser. Genau darauf gekommen wäre ich aber wohl nicht...jogo hat geschrieben:und warum braucht man das GROUP BY ???
Re: Klausurabufgaben des letzten Jahres
mehrfach wurde für die b folgendes genannt:
) ist das falsch. begründung: man kann von einem buch mehrere exemplare ausleihen. da überhaupt nur nach der leser id gefragt ist, muss man nicht mal joinen und erhält eine viel kürzere query:
Je nach Semantik wahlweise noch mit WHERE E.Leser IS NOT NULL
sofern count doppelte vorkommen der isbn nicht auch doppelt zählt (bitte um aufklärungselect l.id, count(e.isbn)
from leser l, entl. e
where l.id = e.leser
group by l.id;

Code: Alles auswählen
SELECT E.Leser, count(*)
FROM Entleihung E
GROUP BY (E.Leser)
Nichts ist wie es scheint!
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Zuletzt geändert von xAx am 14. Mär 2009 16:17, insgesamt 99-mal geändert.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Zuletzt geändert von xAx am 14. Mär 2009 16:17, insgesamt 99-mal geändert.
-
- BASIC-Programmierer
- Beiträge: 125
- Registriert: 14. Okt 2007 14:59
- Wohnort: Kriftel
- Kontaktdaten:
Re: Klausurabufgaben des letzten Jahres
habs mal ausprobiert, zumindest MySQL zählt mehrfach vorkommende Attribute auch mehrfach. Man kann sagen count(DISTINCT e.isbn), dann zählt er mehrfach vorkommende Attribute dann nur jeweils einmal.xAx hat geschrieben: sofern count doppelte vorkommen der isbn nicht auch doppelt zählt (bitte um aufklärung) ist das falsch. begründung: man kann von einem buch mehrere exemplare ausleihen.