SQL-Abfrage

oraclin25

Erfahrenes Mitglied
Hallo zusammen,

ich habe eine Frage bzgl. SELECT.

SELECT SoftwareVerkaeufe AS
SELECT v.kaeufer, v.verkaeufer
FROM produkte p, verkaeufe v
WHERE p.produkt_id = v.produkt_id
AND p.produkt = "Software"

Wie ist SoftwareVerkaeufe in der obigen Abfrage zu verstehen. Ist SoftwareVerkauefe eine Spalte?

Vielen Dank.

Schöne Grüße aus Rheinland,
Eure Ratna;)
 
Was für eine SQL-Sprache soll das sein?

In welchem grösseren Zusammenhang ist das Drin. Wird nachher im Code irgendwo auf eine Quelle namens SoftwareVerkaeufe zugegriffen?
Das erste SELECT verwirrt mich am meisten
 
Hi

Aha, eine View.
Kannte die select-select-Schreibweise auch nicht.

SoftwareVerkaeufe ist keine Spalte,
sondern eine Art Name für die Abfrage
SQL:
SELECT v.kaeufer, v.verkaeufer
FROM produkte p, verkaeufe v
WHERE p.produkt_id = v.produkt_id
AND p.produkt = "Software"

So, wie man aus einer Tabelle selecten kann
SQL:
SELECT * FROM produkte;
kannst du jetzt aus SoftwareVerkaeufe selecten
Die Ausgangsdaten sind aber keine "echte" Tabelle,
sondern das Ergebnis der ersten Abfrage oben.

Also quasi eine imaginäre Tabelle mit den Spalten kaeufer und verkaeufer,
in der alles drin ist, was bei der Abfrage rausgekommen ist
(oder was zum Verwendungszeitpunkt von SoftwareVerkaeufe rauskommen würde,
wenn sich die Daten von produkte und verkaeufe bis dahin geändert haben)
 
Eine View. Hm... in welcher SQL-Sprache wird eine View mit SELECT ViewName AS SELECT... geschrieben? Ich kenne Oracle, MySQL, MS Access. In allen wird die View mit folgendem Konstrukt erstellt:
SQL:
CREATE [OR REPLACE] VIEW ViewName AS
SELECT ...
Ja, ich hab jetzt gesehen dass du das Beispiel aus wikipedia hast. Aber gewöhn dir besser die CREATE VIEW-Schreibweise an - die ist kompatiebler und verwirrt weniger. Leider steht im Wikipedia-Eintrag nicht welche DBMS diese für mich ungewohnte Schreibweise ist.
 
Zuletzt bearbeitet von einem Moderator:
Also, ist das nun lediglich eine andere Schreibweise von CREATE VIEW? Das erste Schlüsselwort SELECT hier hat keinerlei Relevanz mit der eigentlichen "Bedeutung" von SELECT?
 
Die Antwort steht doch auf der Wikipedia-Seite
Beispiel in SQL

SQL:
 SELECT SoftwareVerkaeufe AS
   SELECT v.kaeufer, v.verkaeufer
   FROM   produkte p, verkaeufe v
   WHERE  p.produkt_id = v.produkt_id
      AND p.produkt = "Software"

oder (erzeugt das gleiche Ergebnis):

SQL:
 CREATE VIEW SoftwareVerkaeufe AS
   SELECT v.kaeufer, v.verkaeufer
   FROM   produkte p, verkaeufe v
   WHERE  p.produkt_id = v.produkt_id 
      AND p.produkt = "Software"

Aber:
Eine View. Hm... in welcher SQL-Sprache wird eine View mit SELECT ViewName AS SELECT... geschrieben? Ich kenne Oracle, MySQL, MS Access. In allen wird die View mit folgendem Konstrukt erstellt:
...

Also, in welcher Sprache arbeitest du? Das mit dem SELECT um eine View zu erstellen geht sicher nicht bei allen SQL-Datenbanken. Nun, Oracle? MS SQL? MySQL? Peregraine?
 
Zuletzt bearbeitet von einem Moderator:
Hallo Yaslaw und sheel,

vielen Dank für die Antworten. Ich erstelle eine Sicht grundsätzlich mit CREATE VIEW. Der Blick auf die Wiki-Seite hat mich ein bisschen stutzig gemacht. Ich arbeite zur Zeit mit Oracle XE bzw. lerne zur Zeit damit.

Schöne Grüße aus Rheinland,
Eure Ratna
 
Da sich alle irgendwie auf den SQL Ansi Standard beziehen. Scheint es sich da wohl um einen Fehler zu handeln. Denn in M$ SQL, Oracle, MySql, Access ist das definitiv ein Fehler
 
Hier hat sich niemand auf den Standard bezogen.

Und wahrscheinlich jede der größeren DBs hat Funktionen/Befehle, die der Standard nicht vorschreibt.
Warum auch nicht? Mir ist nicht bekannt, dass der Std. zusätzlich Funktionen verbietet.
Vor allem deswegen, weil bestimmte wichtige Sachen einfach nicht standardisiert sind.
 

Neue Beiträge

Zurück