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

abfrage über zwei Tabellen sortieren auch 0-Häufigkeit

Dieses Thema im Forum "SQLite" wurde erstellt von Wolf-Tilmann, 17 März 2019.

  1. Wolf-Tilmann

    Wolf-Tilmann Aktiver Benutzer

    Hallo allesamt,

    nach einigen Jahren melde ich mich wieder einmal hier im Forum mit der Bitte um Hilfe.

    Ich habe 2 Tabellen (ach :))

    abteilungen
    ID
    abteilung

    vorgang
    ..
    ...
    ID_abteilung
    ....


    Ich möchte jetzt einen VIEW bauen mit folgenden Voraussetzungen
    1. Ausgabe aller Abteilungen mit Ihrer ID
    2. gereiht nach der Häufigkeit, wie oft jede Abteilung in der Tabelle vorgang erscheint
    3 aber auch alle Abteilungen sollen aufgeführt werden, welche noch nicht vorgang steht.
    4 die noch nicht verwendeten Abteilungen sollen alphabetisch sortiert hinten angehängt sein.

    Über einen View lässt sich das kaum bauen, oder?

    Schönen Abend

    Wolf-Tilmann
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Code:
    psql (11.1 (Ubuntu 11.1-3.pgdg16.04+1))
    Type "help" for help.
    
    test=#
    test=# create table abteilungen(id int primary key, abteilung text);
    CREATE TABLE
    test=*# create table vorgang(abteilung_id int references abteilungen, val int);
    CREATE TABLE
    test=*# insert into abteilungen values (1, 'abteilung 1');
    INSERT 0 1
    test=*# insert into abteilungen values (2, 'abteilung 2');
    INSERT 0 1
    test=*# insert into vorgang values (2,10);
    INSERT 0 1
    test=*# insert into vorgang values (2,20);
    INSERT 0 1
    test=*# select * from abteilungen ;
     id |  abteilung  
    ----+-------------
      1 | abteilung 1
      2 | abteilung 2
    (2 rows)
    
    test=*# select * from vorgang ;
     abteilung_id | val
    --------------+-----
                2 |  10
                2 |  20
    (2 rows)
    
    test=*# select a.id, a.abteilung, count(v.*) from abteilungen a left join vorgang v on a.id=v.abteilung_id group by a.id, a.abteilung;
     id |  abteilung  | count
    ----+-------------+-------
      2 | abteilung 2 |     2
      1 | abteilung 1 |     0
    (2 rows)
    
    test=*#
    
    Du erkennst den Weg?
     
  3. Wolf-Tilmann

    Wolf-Tilmann Aktiver Benutzer

    Da hast Du mir etwas zum Nachdenken gegeben. Ich kämpfe mich durch.
    Schönen Abend
    UND
    Danke schön
     
  4. Wolf-Tilmann

    Wolf-Tilmann Aktiver Benutzer

    Ich komme nicht dahiner. Tut aber nicht weh.
    Und ich musste einfach noch einmal "Danke" sagen.
    Das gehört sich so.

    Allseits ein frohes Osterfest!
     
    akretschmer gefällt das.
  5. ukulele

    ukulele Datenbank-Guru

    Es fehlt nur noch die Sortierung aber die gehört eigentlich auch nicht zur View, ich weiß nicht ob sich die bei SQLite in der View definieren läßt.
     
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