1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Abfrage für 1:N Beziehung

Dieses Thema im Forum "SQLite" wurde erstellt von pegast, 11 Januar 2018.

  1. pegast

    pegast Neuer Benutzer

    Code:
    WHERE Child.ParentID=null
    Hallo,
    ich habe 2 Tabellen in einer 1:N Beziehung und möchte die Datensätze aus der Parenttabelle finden, für die es keine Einträge in der Childtabelle gibt.
    Mit der folgenden Abfrage sehe ich, dass es Einträge in der Parenttabelle gibt, für die in der Childtabelle keine Datensätze vorliegen. Ich möchte aber NUR die entsprechenden Datensätze ausgeben.
    Code:
    SELECT *
    FROM Parent
    LEFT JOIN Child
    ON Parent.ID=Child.ParentID
    Wenn ich aber noch zB ein
    Code:
    WHERE Child.ParentID=null
    hinzufüge wird nichts mehr ausgegeben.

    Gruß Peter
     
    Zuletzt bearbeitet: 11 Januar 2018
  2. akretschmer

    akretschmer Datenbank-Guru

    Vergleich mit NULL geht halt nicht.

    Code:
    test=*# create table master(id int primary key);
    CREATE TABLE
    test=*# create table detail(m_id int references master);
    CREATE TABLE
    test=*# insert into master values (1);
    INSERT 0 1
    test=*# insert into master values (2);
    INSERT 0 1
    test=*# insert into detail values (1);
    INSERT 0 1
    test=*# select m.id, count(d.m_id) from master m left join detail d on m.id=d.m_id group by m.id;
     id | count
    ----+-------
      1 |  1
      2 |  0
    (2 rows)
    
    test=*# select m.id, count(d.m_id) from master m left join detail d on m.id=d.m_id group by m.id having count(d.m_id) = 0;
     id | count
    ----+-------
      2 |  0
    (1 row)
    
    test=*#
    
    
     
  3. pegast

    pegast Neuer Benutzer

    Perfect! Vielen Dank
     

Diese Seite empfehlen