1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

equivalent query without subqueries

Dieses Thema im Forum "Oracle" wurde erstellt von seifi10, 14 Dezember 2019.

  1. seifi10

    seifi10 Neuer Benutzer

    Hallo, ich habe folgende Aufgabe:
    Ich habe zwei SQL-Queries, die subqueries enthalten. Ich soll gleichwertige SQL-Queries erstellen, die aber kein subquery enthalten:

    1.
    SELECT DISTINCT title, year FROM movies old WHERE year < ANY ( SELECT year FROM movies WHERE title = old.title )
    Hier hatte ich an folgendes gedacht:
    Select title, min(year) from movies;
    Das funktioniert aber nicht, bzw es kommt immer ein Fehler heraus.. ist mein Ansatz prinzipiell richtig?
    2.
    SELECT country, region, name FROM cities WHERE( country, region ) NOT IN ( SELECT country, code FROM regions ) AND country = 'IT' AND region is NOT NULL;

    Die Tabelle cities hat Attribute wie Länder und Regionen, die auch in der Tabelle regions vorkommen. In der Tabelle regions haben die Regionen aber dann einen CODE, der gleich zum Attribut cities.region ist.
    Hier hatte ich an einen Join gedacht, weiß aber nicht genau welchen und wie ich den dann formulieren könnte.

    Vielleicht kann mir hier einer einen Denkanstoß geben oder hat auch die konkrete Lösung parat. Auf jeden Fall vielen Dank für die Hilfe! :)
     
  2. akretschmer

    akretschmer Datenbank-Guru

    zeig doch mal einfach ein paar Beispieldaten. Deine erste Abfrage, also das gezeigte Select, dürfte ja wohl nie etwas liefern, oder? Wenn das year < sein soll als alle year mit diesem title, dann wirst Du keinen Treffer haben. Daher:

    Code:
    select title, year from movies where false;
    
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden