Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „SQL Terra-Datenbank -> Sowohl.. als auch..“

NT2005

Von dannen.

Hallo,

Ich habe zurzeit SQL in der Schule dran und wir haben ein paar Aufgaben gemacht. Konnte fast alle lösen bis auf die hier (fürs erste):

Ermitteln Sie die Namen aller Flüsse, die sowohl durch Deutschland als auch durch Österreich fließen. Es kann davon ausgegangen werden, dass die Landesidentifikatoren für Deutschland (D) und für Österreich (A) bekannt sind.

Die Datenbank ist es:
Terra

Mein Ansatz war:
Code:
SELECT DISTINCT F.F_NAME, GF.L_ID
  From FLUSS F, GEO_FLUSS GF, GEO_FLUSS GG
  Where F.F_NAME=GF.F_NAME AND GF.L_ID IN("D","A")
Er gibt mir nun zwar alle Flüsse durch D und durch A aus, aber leider nicht nur den einen, die Donau.

Was mach ich falsch?
 

saila

Moderatorle

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

Musst du IN() verwenden? Weil
Code:
SELECT DISTINCT F.F_NAME, GF.L_ID
  From FLUSS F, GEO_FLUSS GF, GEO_FLUSS GG
  Where F.F_NAME=GF.F_NAME AND GF.L_ID = "D" ||GF.L_ID = "A"
bringt das Ergebnis.

Denk daran - Zitat:
Die Anzahl der Werte in der IN-Liste wird nur durch den Wert von max_allowed_packet beschränkt.
 
Zuletzt bearbeitet:

NT2005

Von dannen.

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

Nein, keine Chance. Bei mir kommen nun so gut wie alle Flüsse und der Amazonas liegt jetzt in Österreich?!?

SELECT DISTINCT F.F_NAME, GF.L_ID
From FLUSS F, GEO_FLUSS GF
Where F.F_NAME=GF.F_NAME AND GF.L_ID = "D" ||GF.L_ID = "A"
 

netbandit

Aktives Mitglied

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

PHP:
SELECT DISTINCT F.F_NAME, GF.L_ID
From FLUSS F, GEO_FLUSS GF
Where F.F_NAME=GF.F_NAME AND (GF.L_ID = "D" || GF.L_ID = "A")

Gibt's in Österreich nur die Donau?
 
Zuletzt bearbeitet:

splasch

Nicht mehr ganz neu hier

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

Wo kann man das Er Diagram der Datenbank einsehen. Hier fehlen die Beziehungen zwischen den Tabellen darum funktioniert das auch nicht mit der Abfrage richtig.

Mfg Splasch
 

saila

Moderatorle

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

Jo stimmt. Wer lesen kann ist klar im Vorteil: Ermitteln Sie die Namen aller Flüsse, die sowohl durch Deutschland als auch durch Österreich fließen.

Am besten wäre, mal die Tabellenstruktur zu sehen von beiden Tabellen.
 

saila

Moderatorle

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

PHP:
SELECT DISTINCT F.F_NAME, GF.L_ID
From FLUSS F, GEO_FLUSS GF
Where F.F_NAME=GF.F_NAME AND (GF.L_ID = "D" || GF.L_ID = "A")
Gibt's in Österreich nur die Donau?

Dem gleichen Fehler unterlag ich auch :) - der Fluss sowohl durch D als auch durch A fliesst! ;)
 

NT2005

Von dannen.

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

So und wie macht man das nun? :lol:

Antwort ist:

PHP:
SELECT *, COUNT(A.F_NAME) AS Anzahl
  FROM (
  SELECT DISTINCT F.F_NAME, GF.L_ID 
  FROM FLUSS F, GEO_FLUSS GF
  WHERE F.F_NAME=GF.F_NAME AND (GF.L_ID LIKE "D" OR GF.L_ID LIKE "A")) A
  GROUP BY A.F_NAME HAVING Anzahl = 2
  SELECT F_NAME 
  FROM GEO_FLUSS 
  GROUP BY F_NAME 
  HAVING COUNT(*)>1;
Hätte ich nie mit meinen SQL-Kenntnissen hinbekommen.
 
Zuletzt bearbeitet:

netbandit

Aktives Mitglied

AW: SQL Terra-Datenbank -> Sowohl.. als auch..

Funktioniert bei mir nicht, bekomme eine Fehlermeldung.

Einen hätte ich allerdings noch:

PHP:
SELECT DISTINCT GF.F_NAME, GF.L_ID
  FROM GEO_FLUSS GF
  WHERE GF.L_ID = "D" AND GF.F_NAME=(SELECT DISTINCT GF2.F_NAME FROM GEO_FLUSS GF2 WHERE GF2.F_NAME=GF.F_NAME AND GF2.L_ID = "A")
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
175.155
Beiträge
2.581.858
Mitglieder
67.222
Neuestes Mitglied
Gregor
Oben