Announcement

Collapse
No announcement yet.

Problem bei Ungleich abfragen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem bei Ungleich abfragen

    hi, ich habe hier eine aufgabe, wo ich nicht auf die lösung komme.

    Welche Kunden haben keine Reservierung vorgenommen?
    a)Welche Kunden haben mindestens eine Reservierung vorgenommen:
    b) Welche Kunden haben keine Reservierung vorgenommen:

    das ergebnis liegt mir vor ich komm nur nicht drauf.

    dafür gibt es jetzt eine kundentabelle mit dem primärschlüssel KNR und dann eine tabelle reservierung.
    in der tabelle reservierung ist der primärschlüssel L_NR und dort ist auch als fremdschlüssel das KRN enthalten.


    ich hab es mit != oder <> probiert in where, aber das will nicht klappen.
    kann mir jemand das mal erklären, wie man eine "nicht abfrage" über zwei oder mehrere tabellen macht?


    hm wenn ich grad dabei bin, vllt kann man noch folgendes problem verstehen:
    in 1 tabelle stehen 2 spalten, welche zahlen enthalten. diese zahlen stehen zueinander in bezeihung.
    man kann sich das wie die mitarbeiternummer vorstellen, wo vor einem namen die nummer seines chefs steht, und hinter seinem namen seine nummer.
    ein chef kann wiederrum ein chef haben.
    und jetzt soll man mit subselect und danach nocheinmal mit join 2 tabellen ausgeben.
    tabelle 1 ist der nachname der mitarbeiter und daneben steht die spalte mit dem namen des zugehörigen chefs.

    hab da schon einiges mit subselect am anfang und am ende versucht, hab jetzt leider nicht mehr meine versuche, muss ich nochmal probieren.
    aber vielleicht versteht das einer auf die schnelle und kan mir helfen

  • #2
    Originally posted by schlachtrufe View Post
    hi, ich habe hier eine aufgabe, wo ich nicht auf die lösung komme.

    hm wenn ich grad dabei bin, vllt kann man noch folgendes problem verstehen:
    in 1 tabelle stehen 2 spalten, welche zahlen enthalten. diese zahlen stehen zueinander in bezeihung.
    man kann sich das wie die mitarbeiternummer vorstellen, wo vor einem namen die nummer seines chefs steht, und hinter seinem namen seine nummer.
    ein chef kann wiederrum ein chef haben.
    und jetzt soll man mit subselect und danach nocheinmal mit join 2 tabellen ausgeben.
    tabelle 1 ist der nachname der mitarbeiter und daneben steht die spalte mit dem namen des zugehörigen chefs.

    hab da schon einiges mit subselect am anfang und am ende versucht, hab jetzt leider nicht mehr meine versuche, muss ich nochmal probieren.
    aber vielleicht versteht das einer auf die schnelle und kan mir helfen
    - Ich hoffe, ich habe dich richtig verstanden, du suchst eine hierarchische Abfrage ? Dass würdest du folgendermassen lösen :

    SELECT DISTINCT parent_document_id
    FROM my_table
    WHERE parent_document_id IS NOT NULL
    START WITH (document_id = 0) --> 0 = ID des Root Elementes...
    CONNECT BY PRIOR parent_document_id = document_id
    ORDER BY parent_document_id;

    - Dieses Beispiel basiert auf verknüpften Document_id's, dass solltest du einfach auf deine Bedürfnisse anpassen können.

    Comment


    • #3
      Originally posted by schlachtrufe View Post
      hi, ich habe hier eine aufgabe, wo ich nicht auf die lösung komme.

      Welche Kunden haben keine Reservierung vorgenommen?
      a)Welche Kunden haben mindestens eine Reservierung vorgenommen:
      b) Welche Kunden haben keine Reservierung vorgenommen:

      ...

      ich hab es mit != oder <> probiert in where, aber das will nicht klappen.
      kann mir jemand das mal erklären, wie man eine "nicht abfrage" über zwei oder mehrere tabellen macht?
      Hallo schlachtrufe,

      Das Zauberwort heißt hier Subselect mit NOT IN - also:
      [highlight=sql]select * from kunden
      where kunden_pk NOT IN (select kunden_fk from reservierungen)[/highlight]

      Gruß Falk
      Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

      Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

      Comment

      Working...
      X