Hy, bin noch ziemlich neu in SQL, studiere jetzt im 2 Semester Informationsmanagment, demnach hab ich auch nicht unbedingt gewaltige Grundlagen. Aber einfache Sachen kann ich schon relativ gut und schnell lösen.
Nur hab ich jetzt ein Problem, da bin ich mit meinem Latein am Ende angekommen .
Also ich will folgendes SQL-Statement schreiben bzw. ausführen.
Ich hab aus unterschiedlichen Tabellen die Populationsdaten der einzelnen Länder der Welt zusammengefasst.
In der Tabelle Country gibt es ein Feld in dem die Gesamteinwohnerzahlt des jeweiligen Landes steht.
Desweiteren hab ich eine Tabelle Provinzen, dort sind die einzelnen Provinzen bzw. Bundesländer, Kantone etc. der Länder aufgelistet. Die Populationsdaten der einzelnen Provinzen hab ich addiert und ein View erstellt.
Nun möchte ich vergleichen bei welchen Ländern die Bevölkerungszahl um mehr als 10 % abweicht.
Nur hab ich keine Idee wie ich den 10 % Unterschied in mein SQL-Statement einbauen kann.
Hat da jemand eine Idee? Zur Verdeutlichung hier die beiden Statements
zuerst die Erstellung des Views
create view Population_der_Welt AS
select c.name, sum(p.population) as GEWZ
from province p, country c
where c.code = p.country
group by c.name;
select c.name
from country c, population_der_welt p
where p.name = c.name
and c.population not in p.GEWZ;
Wenn ich das richtig sehe, gibt mir das zweite Statement die Werte aus die nicht im View enthalten sind.
Hat jemand eine Idee wie man das lösen könnte?
Nur hab ich jetzt ein Problem, da bin ich mit meinem Latein am Ende angekommen .
Also ich will folgendes SQL-Statement schreiben bzw. ausführen.
Ich hab aus unterschiedlichen Tabellen die Populationsdaten der einzelnen Länder der Welt zusammengefasst.
In der Tabelle Country gibt es ein Feld in dem die Gesamteinwohnerzahlt des jeweiligen Landes steht.
Desweiteren hab ich eine Tabelle Provinzen, dort sind die einzelnen Provinzen bzw. Bundesländer, Kantone etc. der Länder aufgelistet. Die Populationsdaten der einzelnen Provinzen hab ich addiert und ein View erstellt.
Nun möchte ich vergleichen bei welchen Ländern die Bevölkerungszahl um mehr als 10 % abweicht.
Nur hab ich keine Idee wie ich den 10 % Unterschied in mein SQL-Statement einbauen kann.
Hat da jemand eine Idee? Zur Verdeutlichung hier die beiden Statements
zuerst die Erstellung des Views
create view Population_der_Welt AS
select c.name, sum(p.population) as GEWZ
from province p, country c
where c.code = p.country
group by c.name;
select c.name
from country c, population_der_welt p
where p.name = c.name
and c.population not in p.GEWZ;
Wenn ich das richtig sehe, gibt mir das zweite Statement die Werte aus die nicht im View enthalten sind.
Hat jemand eine Idee wie man das lösen könnte?
Comment