# 2.2 XML

## 2.2.1

- Namen sind klar und deutlich
- inhaltlich korrekt geordnet

## 2.2.2

````xml
<?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
```sql
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
```sql
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

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

## 2.3.3

Gute Frage, frag chatgpt!