Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte...

37
Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 • Aussagen über Tabelleninhalte • Aussagelogik • Äquivalenzen • Select • Where

Transcript of Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte...

Page 1: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 1

WorzykFH Anhalt

SQL 1

• Aussagen über Tabelleninhalte

• Aussagelogik

• Äquivalenzen

• Select

• Where

Page 2: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 2

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Lehmann Hans 260

Maier Fritz 250

Müller Anna 111

Köhler Emil 301

Bauer Else 260

Page 3: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 3

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Müller Anna 111

Alle Tupel von Müller

Page 4: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 4

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Köhler Emil 301

Alle Tupel mit einer Telefonnummer >300

Page 5: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 5

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Alle Tupel von Müller und mit einer Telefonnummer >300

Page 6: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 6

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Müller Anna 111

Köhler Emil 301

Alle Tupel von Müller oder mit einer Telefonnummer >300

Page 7: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 7

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Müller Anna 111

Köhler Emil 301

Alle Tupel für die nicht gilt:Der Name ist nicht Müller und die Telefonnummer ist < 300

Page 8: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 8

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Lehmann Hans 260

Köhler Emil 301

Alle Tupel für die gilt: wenn nicht Lehmann dann mit einer Telefonnummer >300

Page 9: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 9

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Müller J utta 425

Lehmann Hans 260

Maier Fritz 250

Müller Anna 111

Köhler Emil 301

Bauer Else 260

Alle Tupel von Müller und der TelNr > 300 oder wenn der Name „Müller“ ist, dann TelNr 300, sonst egal

Page 10: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 10

WorzykFH Anhalt

Aussagen über Tabelleninhalte

Alle Tupel für die gilt:Der Name ist „Müller“ und die TelNr > 300 und entweder ist der Name nicht „Müller“ oder TelNr 300 oder beides

Page 11: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 11

WorzykFH Anhalt

Aussagen über Tabelleninhalte

• Unterschiedliche Aussagen können zu gleichen Ergebnissen führen

• Exakte Aussagen sind schwierig zu formulieren

• Umgangssprachliche Aussagen sind häufig nicht exakt

Page 12: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 12

WorzykFH Anhalt

AussagelogikBildungsregeln für Ausdrücke:

Jede Aussagevariablen ist ein AusdruckWenn p q Ausdrücke sind, dann auchp Negation

pq Konjunktionpq Alternativepq Implikationpq Äquivalenz

pq AntivalenzAusdrücke

Page 13: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 13

WorzykFH Anhalt

Beispiele für Ausdrückep Name = "Müller"q Telefonnummer >300p q Müller und mit einer Telefonnummer >300p q Alle Tupel von Müller oder mit einer

Telefonnummer >300 p q) Alle Tupel für die nicht gilt:

Der Name ist nicht Müllerund die Telefonnummer ist < 300

r q wenn nicht Lehmann dann mit einerTelefonnummer >300

(p q) p q)

Alle Tupel von Müller und der TelNr > 300oder wenn der Name „Müller" ist, dann TelNr 300, sonst egal

Page 14: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 14

WorzykFH Anhalt

Äquivalenzenp q p q

p q p q

p q p qpq (p q (q p

(p q (q ppq (p q (q p

Page 15: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 15

WorzykFH Anhalt

select

SELECT command ::=

column

SELECT *,

DISTINCT

ALL

table.

t_alias.

FROM table

t_alias

,

Page 16: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 16

WorzykFH Anhalt

select

SQL> SELECT * FROM telefonbuch;

NACHNAME VORNAME TELEFONNUMMER EINGERIC

-------------------- ---------- ------------- --------

Müller Jutta 425 01.04.00

Lehmann Hans 260 03.11.99

Maier Fritz 250 05.02.00

Müller Anna 111 03.04.00

Köhler Emil 301 02.02.00

Bauer Else 260 01.03.00

6 Zeilen ausgewählt.

Page 17: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 17

WorzykFH Anhalt

selectSQL> SELECT vorname, nachname, telefonnummer

2 FROM telefonbuch;

VORNAME NACHNAME TELEFONNUMMER

---------- -------------------- -------------

Jutta Müller 425

Hans Lehmann 260

Fritz Maier 250

Anna Müller 111

Emil Köhler 301

Else Bauer 260

6 Zeilen ausgewählt.

Page 18: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 18

WorzykFH Anhalt

selectSQL> SELECT Nachname, Vorname,

2 TO_CHAR(eingerichtet,'DD.MON.YYYY')

3 FROM telefonbuch;

NACHNAME VORNAME TO_CHAR(EIN

-------------------- ---------- -----------

Müller Jutta 01.APR.2000

Lehmann Hans 03.NOV.2099

Maier Fritz 05.FEB.2000

Müller Anna 03.APR.2000

Köhler Emil 02.FEB.2000

Bauer Else 01.MÄR.2000

Page 19: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 19

WorzykFH Anhalt

select

SELECT command ::=

column

SELECT *,

DISTINCT

ALL

table.

t_alias.

FROM table

t_alias

,

c_alias

expression

Page 20: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 20

WorzykFH Anhalt

expressionexpr (Form I) ::=

(expr)

expr

expr

-

* expr

+

/

-

+

||

(function)

Page 21: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 21

WorzykFH Anhalt

selectSQL> SELECT Nachname, Vorname,

2 TO_CHAR(eingerichtet,'DD.MON.YYYY') seit

3 FROM telefonbuch;

NACHNAME VORNAME SEIT

-------------------- ---------- -----------

Müller Jutta 01.APR.2000

Lehmann Hans 03.NOV.2099

Maier Fritz 05.FEB.2000

Müller Anna 03.APR.2000

Köhler Emil 02.FEB.2000

Bauer Else 01.MÄR.2000

Page 22: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 22

WorzykFH Anhalt

select

SELECT command ::=

column

SELECT *,

DISTINCT

ALL

table.

t_alias.

FROM table

WHERE conditiont_alias

,

c_alias

Page 23: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 23

WorzykFH Anhalt

expression

expr (Form II) ::=

column

‘text‘

number

Page 24: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 24

WorzykFH Anhalt

conditioncondition (Form I) ::=

expr = expr

>

>=

<

!=

<=

Page 25: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 25

WorzykFH Anhalt

condition

condition (Form II) ::=

(condition)

NOT condition

condition conditionAND

OR

Page 26: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 26

WorzykFH Anhalt

AbfragenAlle Tupel von MüllerSQL> SELECT Nachname, Vorname, Telefonnummer

2 FROM telefonbuch

3 WHERE nachname = 'Müller';

NACHNAME VORNAME TELEFONNUMMER

------------------- ---------- -------------

Müller Jutta 425

Müller Anna 111

Page 27: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 27

WorzykFH Anhalt

condition

condition (Form II) ::=

(condition)

NOT condition

condition conditionAND

OR

Page 28: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 28

WorzykFH Anhalt

AbfragenAlle Tupel von MüllerSQL> SELECT Nachname, Vorname, Telefonnummer

2 FROM telefonbuch

3 WHERE nachname = 'Müller';

NACHNAME VORNAME TELEFONNUMMER

------------------- ---------- -------------

Müller Jutta 425

Müller Anna 111

Page 29: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 29

WorzykFH Anhalt

AbfragenAlle Tupel mit einer Telefonnummer >300SQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE telefonnummer > 300;

NACHNAME VORNAME TELEFONNUMMER-------------------- ---------- -------------Müller Jutta 425Köhler Emil 301

Page 30: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 30

WorzykFH Anhalt

Abfragen

Alle Tupel von Müller und mit einer Telefonnummer >300SQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE nachname = 'Müller' 4 AND telefonnummer > 300;

NACHNAME VORNAME TELEFONNUMMER-------------------- ---------- -------------Müller Jutta 425

Page 31: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 31

WorzykFH Anhalt

AbfragenAlle Tupel von Müller oder mit einer Telefonnummer>300SQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE Nachname = 'Müller' 4 OR telefonnummer > 300;

NACHNAME VORNAME TELEFONNUMMER-------------------- ---------- -------------Müller Jutta 425Müller Anna 111Köhler Emil 301

Page 32: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 32

WorzykFH Anhalt

AbfragenAlle Tupel für die nicht gilt:Der Name ist nicht „Müller“ und die Telefonnummer ist nicht > 300SQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE NOT( Nachname != 'Müller' 4 AND NOT telefonnummer > 300);

NACHNAME VORNAME TELEFONNUMMER-------------------- ---------- -------------Müller Jutta 425Müller Anna 111Köhler Emil 301

Page 33: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 33

WorzykFH Anhalt

AbfragenAlle Tupel von Müller und der TelNr > 300 oder wenn der Name „Müller“ ist, dann TelNr 300, sonst egal

SQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE (Nachname = 'Müller' 4 and Telefonnummer > 300) 5 OR (Nachname != 'Müller' 6 or Telefonnummer <= 300);NACHNAME VORNAME TELEFONNUMMER-------------------- ---------- -------------Müller Jutta 425Lehmann Hans 260Maier Fritz 250Müller Anna 111Köhler Emil 301Bauer Else 260

Page 34: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 34

WorzykFH Anhalt

AbfragenAlle Tupel für die gilt:Der Name ist „Müller“ und die TelNr > 300 und entweder ist der Name nicht „Müller“oder TelNr 300 oder beidesSQL> SELECT Nachname, Vorname, Telefonnummer 2 FROM telefonbuch 3 WHERE (Nachname = 'Müller' 4 and Telefonnummer > 300) 5 AND (Nachname != 'Müller' 6 OR Telefonnummer <= 300);

Es wurden keine Zeilen ausgewählt

Page 35: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 35

WorzykFH Anhalt

SQL Plus 8.0

Page 36: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 36

WorzykFH Anhalt

Anmelden

Page 37: Datenbanksysteme für FÜ SS 2000 Seite 2 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.

Datenbanksysteme für FÜ SS 2000Seite 2 - 37

WorzykFH Anhalt

Zusammenfassung

• Die Aussagelogik ermöglicht die exakte Formulierung einer Anfrage

• select Anweisung• where Klausel beschreibt die

umgangssprachlich formulierte Ergebnismenge mit Hilfe des (Pfeilfreien) Aussagekalküls