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

wenn where-klausel false, dann nehme nächstes attribut

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von Daniel485, 29 Juni 2012.

  1. Daniel485

    Daniel485 Benutzer

    Hallo zusammen!
    ich habe ein kleins sql-problem und hoffe, das ihr mir helfen könnt.
    Das vorhandene SQL-Statement sieht so aus:
    select*
    from
    abc.Tabelle
    where
    Eigenschaft1 = 'UE1'
    Möglicher Inhalt Eigenschaft1: UE1, UE2, UE3
    Auszug der Tabelle ohne Where-KLausel:
    Name Eigenschaft1 Wert
    Müller UE1 234
    Müller UE2 2234
    Müller UE3 534
    Maier UE2 275
    Maier UE3 12
    SchmidtUE1 298
    SchmidtUE3 55
    Greift die Where Klausel oben dann, sieht die Ausgabe so aus:
    Name Eigenschaft1 Wert
    Müller UE1 234
    SchmidtUE1 298
    Es fehlt der Name Maier.
    Kann ich die where klausel so umstellen, das es eine art wasserfall-effekt ist? d.h.
    wenn die eigenschaft1 nciht vorhanden ist für einen bestimmten datensatz, dann nehme die nächste Eigenschaft1 und zeige es an. Die Tabelle würde dann so aussehen:
    Name Eigenschaft1 Wert
    Müller UE1 234
    Maier UE2 275
    SchmidtUE1 298
    hoffe ihr könnt mir helfen!!
    danke!!
     
  2. PLSQL_SQL

    PLSQL_SQL Datenbank-Guru

    Hy,

    ich glaube du suchst das hier..


    select*
    from
    abc.Tabelle
    where
    Eigenschaft1 IN ( 'UE1' , 'UE2' , 'UE3' )

    Lg
     
  3. ukulele

    ukulele Datenbank-Guru

    Ich glaube er meint etwas anderes und möchte zu jedem Namen den "niedrigsten" Datensatz anzeigen. Hier mein Vorschlag:
    Code:
    SELECT    t1.Name,
            t1.Eigenschaft1,
            t1.Wert
    FROM    Tabelle t1
    WHERE    t1.Eigenschaft1 = (    SELECT    TOP 1 t2.Eigenschaft1
                                FROM    Tabelle t2
                                WHERE    t2.Name = t1.Name
                                ORDER BY t2.Eigenschaft1 )
     
    PLSQL_SQL gefällt das.
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