Aufgabenstellung:
Die Tabelle "pdb.spezies" besitzt die Attribute "id_spezie", "id_gattung", "id_art", "id_sorte", "id_wuchsform", "einheimisch" und "bemerkung"
Von der Tabelle "pdb.gattungen" soll das Attribut "name_gattung" verwendet werden
Von der Tabelle "pdb.arten" soll das Attribut "name_art" verwendet werden
Von der Tabelle "pdb.sorten" soll das Attribut "name_sorte" verwendet werden
Von der Tabelle "pdb.pflanzen" sollen die Attribute "id_spezie" und "shape" verwendet werden.
Die Tabelle "pdb.verkn_kurse_pflanzen" soll mit den Tabellen "pdb.pflanzen" und "pdb.kurse" verknüpft werden.
Die Tabelle "pdb.verkn_kurse_pflanzen" besitzt die Attribute "id_pflanze", "id_kurs" und "objectid"
Die Tabelle "pdb.pflanzen" besitzt die Attribute "objectid", "id_spezie", "gdb_geomattr_data" und "shape"
Von der Tabelle "pdb.kurse" soll das Attribut "name_kurs" verwendet werden.
Erstelle einen SQL code für pgAdmin für oben genannte Aufgabenstellung.
Mit meinem aktuellen SQL-Code entsteht zwar kein ERROR, die Tabelle wird aber leer wiedergegeben:
CREATE VIEW pdb.view_kursliste_stauden_gaertnerisch_13 AS
SELECT
pdb.spezies.id_spezie,
pdb.gattungen.name_gattung,
pdb.arten.name_art,
pdb.sorten.name_sorte,
pdb.pflanzen.shape,
pdb.kurse.name_kurs,
pdb.verkn_kurse_pflanzen.id_pflanze
FROM
pdb.spezies
INNER JOIN pdb.gattungen ON pdb.spezies.id_gattung = pdb.gattungen.id_gattung
INNER JOIN pdb.arten ON pdb.spezies.id_art = pdb.arten.id_art
INNER JOIN pdb.sorten ON pdb.spezies.id_sorte = pdb.sorten.id_sorte
INNER JOIN pdb.pflanzen ON pdb.spezies.id_spezie = pdb.pflanzen.id_spezie
INNER JOIN pdb.verkn_kurse_pflanzen ON pdb.pflanzen.objectid = pdb.verkn_kurse_pflanzen.objectid
INNER JOIN pdb.kurse ON pdb.verkn_kurse_pflanzen.id_kurs = pdb.kurse.id_kurs
WHERE
pdb.kurse.name_kurs = 'UÖ Stauden Gärtnerisch';
Wo könnte das Problem liegen? Die Tabellen habe ich bereits alle überprüft, sie sind alle vollständig.
Hier noch eine Darstellung der Tabellen, wie sie miteinander verknüpft sein sollten (leider sehr unscharf):
- Probieren Sie folgende SQL-Abfrage in pgAdmin zu formulieren.
- Machen Sie eine Liste mit allen Pflanzen des Kurses “UÖ Stauden Gärtnerisch”. Die Liste soll dabei die ID der Spezies, die Gattung, Art und Sorte der Pflanze sowie den Namen des Kurses und den Standort (Attribut shape) enthalten. Speichern Sie diese Abfrage als View mit dem Namen “pdb.view_kursliste_stauden_gaertnerisch_studentNr” in der Datenbank.
Die Tabelle "pdb.spezies" besitzt die Attribute "id_spezie", "id_gattung", "id_art", "id_sorte", "id_wuchsform", "einheimisch" und "bemerkung"
Von der Tabelle "pdb.gattungen" soll das Attribut "name_gattung" verwendet werden
Von der Tabelle "pdb.arten" soll das Attribut "name_art" verwendet werden
Von der Tabelle "pdb.sorten" soll das Attribut "name_sorte" verwendet werden
Von der Tabelle "pdb.pflanzen" sollen die Attribute "id_spezie" und "shape" verwendet werden.
Die Tabelle "pdb.verkn_kurse_pflanzen" soll mit den Tabellen "pdb.pflanzen" und "pdb.kurse" verknüpft werden.
Die Tabelle "pdb.verkn_kurse_pflanzen" besitzt die Attribute "id_pflanze", "id_kurs" und "objectid"
Die Tabelle "pdb.pflanzen" besitzt die Attribute "objectid", "id_spezie", "gdb_geomattr_data" und "shape"
Von der Tabelle "pdb.kurse" soll das Attribut "name_kurs" verwendet werden.
Erstelle einen SQL code für pgAdmin für oben genannte Aufgabenstellung.
Mit meinem aktuellen SQL-Code entsteht zwar kein ERROR, die Tabelle wird aber leer wiedergegeben:
CREATE VIEW pdb.view_kursliste_stauden_gaertnerisch_13 AS
SELECT
pdb.spezies.id_spezie,
pdb.gattungen.name_gattung,
pdb.arten.name_art,
pdb.sorten.name_sorte,
pdb.pflanzen.shape,
pdb.kurse.name_kurs,
pdb.verkn_kurse_pflanzen.id_pflanze
FROM
pdb.spezies
INNER JOIN pdb.gattungen ON pdb.spezies.id_gattung = pdb.gattungen.id_gattung
INNER JOIN pdb.arten ON pdb.spezies.id_art = pdb.arten.id_art
INNER JOIN pdb.sorten ON pdb.spezies.id_sorte = pdb.sorten.id_sorte
INNER JOIN pdb.pflanzen ON pdb.spezies.id_spezie = pdb.pflanzen.id_spezie
INNER JOIN pdb.verkn_kurse_pflanzen ON pdb.pflanzen.objectid = pdb.verkn_kurse_pflanzen.objectid
INNER JOIN pdb.kurse ON pdb.verkn_kurse_pflanzen.id_kurs = pdb.kurse.id_kurs
WHERE
pdb.kurse.name_kurs = 'UÖ Stauden Gärtnerisch';
Wo könnte das Problem liegen? Die Tabellen habe ich bereits alle überprüft, sie sind alle vollständig.
Hier noch eine Darstellung der Tabellen, wie sie miteinander verknüpft sein sollten (leider sehr unscharf):