Was ist der Unterschied zwischen Projektion und Auswahl? Ist es:
- Projektion -> zur Auswahl der Tabellenspalten; und
- Auswahl ---> um die Tabellenzeilen auszuwählen?
Sind Projektion und Auswahl vertikal bzw. horizontal geschnitten?
Antworten:
Genau.
Projektion bedeutet, auszuwählen, welche Spalten (oder Ausdrücke) die Abfrage zurückgeben soll.
Auswahl bedeutet, welche Zeilen zurückgegeben werden sollen.
wenn die Abfrage ist
select a, b, c from foobar where x=3;
dann ist "a, b, c" der Projektionsteil, "wobei x = 3" der Auswahlteil.
Einfach PROJECTION befasst sich mit der Eliminierung oder Auswahl von Spalten, während SELECTION die Eliminierung oder Auswahl von Zeilen behandelt.
Projektion: Was auch immer in die Auswahlklausel eingegeben wurde, dh 'Spaltenliste' oder '*' oder 'Ausdrücke', die unter Projektion stehen.
* Auswahl: * Welche Art von Bedingungen wenden wir auf diese Spalten an, dh welche Datensätze werden ausgewählt?
Beispielsweise:
SELECT empno,ename,dno,job from Emp
WHERE job='CLERK';
In der obigen Abfrage werden die Spalten "empno, ename, dno, job" unter Projektion gestellt, "wobei job = 'clerk'" unter Auswahl steht
Projektionen und Auswahlen sind zwei unäre Operationen in der relationalen Algebra und haben praktische Anwendungen in RDBMS (relationale Datenbankverwaltungssysteme).
Im praktischen Sinne bedeutet ja Projektion die Auswahl bestimmter Spalten (Attribute) aus einer Tabelle und Auswahl bedeutet das Filtern von Zeilen (Tupeln). Bei einer herkömmlichen Tabelle können Projektion und Auswahl auch als vertikales und horizontales Schneiden oder Filtern bezeichnet werden.
Wikipedia bietet formellere Definitionen dieser Beispiele und sie können für die weitere Lektüre der relationalen Algebra hilfreich sein:
SELECT
Klausel führt tatsächlich eine Projektion durch (keine Auswahl), und es ist dieWHERE
Klausel, die tatsächlich eine Auswahl ausführt .