SQLite - Grundlegende logische Operationen
| abgelegt unter: SQLite, Datenbankprogrammierung, SQLMittels der Selektion lässt sich eine Auswahl an Zeilen aus einer gegebenen Tabelle treffen, die bestimmten Bedingungen genügt. Diese Bedingungen formuliert man durch eine logische Aussage. Jede Zeile der Tabelle, für die diese Aussage wahr ist, wird in die Auswahl übernommen und ansonsten nicht.
Aussage
In der Mathematik wird eine Aussage wie folgt definiert:
Eine Aussage ist ein Satz, von dem eindeutig entschieden werden kann, ob er wahr oder falsch ist.
Der folgende Satz wäre demnach keine Aussage: "Gestern hat es wie aus Eimern geregnet!".
Formuliert man das etwas anders, z.B.: "Gestern hat es über meinem Grundstück 10 Liter pro Quadratmeter geregnet!", dann lässt sich eindeutig entscheiden, ob dieser Satz wahr oder falsch ist, also ist dieser Satz eine Aussage.
Weitere Beispiele für Aussagen:
- 3 ist kleiner als 1,
- 5 >= 6
- 'rot' = 'blau'
- 0 <> 1
Von jedem dieser Sätze kann eindeutig entschieden werden, ob er wahr oder falsch ist, also sind das alles Aussagen.
Betrachtet man einmal einen Satz wie diesen: "Der Mond besteht aus Käse!". Im Mittelalter war der Wahrheitsgehalt dieses Satzes sicherlich nicht eindeutig entscheidbar, damals also keine Aussage. Heute jedoch kann eindeutig gesagt werden: FALSCH, und folglich ist heute dieser Satz eine Aussage.
Aussagen können miteinander verknüpft werden, so dass eine neue Aussage entsteht:
Die Verknüpfung zweier Aussagen ist wieder eine Aussage
Natürlich muss definiert werden, was unter der Verknüpfung zweier Aussagen zu verstehen ist. Es gibt zwei grundlegende logische Operatoren, mittels derer jeweils zwei Aussagen zu einer neuen Aussage verknüpft werden können:
- UND
- ODER
Seien nun A und B zwei Sätze, über deren Wahrheitsgehalt eindeutig entschieden werden kann, also zwei Aussagen, dann sind diese logischen Verknüpfungs-Operatoren wie folgt definiert:
UND - Operator
Die Aussage A UND B ist genau dann wahr, wenn sowohl A, als auch B wahr ist, wenn also beide Aussagen gleichzeitig wahr sind!
Man stellt diesen Sachverhalt gerne durch eine s.g. Wahrheitstabelle dar:
| A | B | → | A UND B |
|---|---|---|---|
| falsch | falsch | falsch | |
| falsch | wahr | falsch | |
| wahr | falsch | falsch | |
| wahr | wahr | wahr |
ODER - Operator
Die Aussage A ODER B ist genau dann wahr, wenn A wahr ist oder wenn B wahr ist, oder wenn A UND B wahr ist!
Oder einfacher ausgedrückt: A ODER B ist genau dann falsch, wenn (NICHT A) UND (NICHT B) wahr ist!
Die zugehörige Wahrheitstabelle sieht dann so aus:
| A | B | → | A ODER B |
|---|---|---|---|
| falsch | falsch | falsch | |
| falsch | wahr | wahr | |
| wahr | falsch | wahr | |
| wahr | wahr | wahr |
Im umgangssprachlichen Gebrauch hat das ODER eine leicht andere Bedeutung, denn dort ist ENTWEDER ODER gemeint, also genau eine von beiden Aussagen ist wahr: "Was ist nun Kind? Schokoladeneis ODER Gummibärchen? Entscheide Dich mal!". Dies nennt man in der Aussagenlogik "Exklusiv-Oder".
Das "Exklusiv-Oder" selbst ist keine grundlegende logische Operation, sondern eine Kombination aus den grundlegenden logischen Operationen UND, ODER und NICHT.
Der NICHT-Operator negiert den Wahrheitsgehalt einer Aussage und ist wie folgt definiert:
NICHT - Operator
NICHT A ist genau dann wahr, wenn A falsch ist!
Im Gegensatz zu den Operatoren UND und ODER, die man als binäre Operatoren bezeichnet, weil sie zwei Aussagen zu einer neuen Aussage verknüpfen, ist der Operator NICHT ein s.g. unärer Operator, weil er aus genau einer Aussage eine neue Aussage macht.
Die Wahrheitstabelle für NICHT sieht wie folgt aus:
| A | → | NICHT A | |
|---|---|---|---|
| falsch | wahr | ||
| wahr | falsch |
Rangfolge der logischen Operatoren
Bekanntlich geht "Punktrechnung" vor "Strichrechnung". In diesem Sinne gibt es auch bei den logischen Operatoren eine Rangfolge. Die nachfolgende Liste zeigt die logischen Operatoren in absteigender Rangfolge:
- NICHT
- UND
- ODER
Beachtet man noch, dass Klammern zuerst aufgelöst werden müssen, bevor man weiter rechnen kann, so lässt sich die Rangfolge der logischen Operatoren wie folgt veranschaulichen:
NICHT A UND B ODER B ist gleich ((NICHT A) UND B) ODER B
NICHT A ODER B UND A ist gleich (NICHT A) ODER ( B UND A )
Als letztes Beispiel soll das o.g. "Exklusiv-Oder" dienen, das sich wie folgt darstellen lässt:
NICHT A UND B ODER NICHT B UND A ist gleich ((NICHT A) UND B) ODER ((NICHT B) UND A)
