2
0
Files
ausbildungschule/Zweites Jahr/aufgaben/saveLibaryDataInXml/task.md
2025-12-12 07:53:10 +01:00

1.1 KiB

2.2 XML

2.2.1

  • Namen sind klar und deutlich
  • inhaltlich korrekt geordnet

2.2.2

<?xml version="1.0" encoding="utf-8"?>
<data> 
    <buch>
        <bibNr> </bibNr>
        <title> </title>
        <zustand> </zustand>
        <seitenanzahl> </seitenanzahl> 
    </buch>
    <avmedium>
        <bibNr> </bibNr>
        <title> </title>
        <zustand> </zustand>
        <dauer> </dauer>
    </avmedium>
</data>

2.3 SQL

2.3.1

Meine Lösung

SELECT book.bibNr, book.titel, COUNT(book.bibNr) AS wieOftAusgeliehen
FROM buch AS book   
LEFT JOIN Ausleihe AS rent ON book.bibNr = rent.bibNr
    AND YEAR(rent.ausleihdatum) = 2015
GROUP BY book.bibNr, book.titel
ORDER BY wieOftAusgeliehen ASC 

Lösung des Lehrers

SELECT a.bibNr, b.titel, COUNT(*) AS wieOftAusgeliehen
FROM Ausleihe, Buch
WHERE AUsleihe.bibNr=Buch.bibNr
WHERE Aulsiehe.ausleihdatum BETWEEN "2015-01-01" AND "2015-12-32"
GROUP BY bibNr, titel
ORDER BY COUNT(*) DESC;

2.3.2

SELECT bibNr, COUNT(*) AS orderAnzahl
FROM Ausleihe
GROUP BY bibNr
HAVING COUNT(*) > 10; -- HAVING bei solchen funktionen

2.3.3

Gute Frage, frag chatgpt!