Announcement

Collapse
No announcement yet.

Case in SQL

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

  • Case in SQL

    Also ich habe folgendes Problem:
    Ich arbeite zur Zeit an einem Importer. Normalerweise endspricht ein SQL Statement einem "Messdatentyp" (sprich: alles aus dem SQL Statement wird in meine DB zu einem solchen importiert). Jetzt kann es aber auch vorkommen, dass man verschiedene SQL Statements hat, von denen jeweils ein paar Spalten zu einem "Messdatentyp" importiert werden müssen und der Rest zu einem anderem. Zur verdeutlichung mal folgendes Bild:

    Stmt A liefert: timestamp_1, col_1,col_2,col_3
    Stmt B liefert: timestamp_2, col_4,col_5,col_6

    einen timestamp gibt es immer und sind in aufsteigender Reihenfolge sortiert.
    Die Stmt kann ich auch nicht beeinflussen (denn die kommen von "aussen"). Ich weiss aber wohl, welche Spalte aus welchem Statement wie zu importieren ist.

    Jetzt kann es vorkommen, dass col_1,col_2 und col_4 zu einem "Messdatentyp" importiert werden müssen (also: timestamp_?,col_1,col_2,col_4) und der Rest zu einem anderem.

    Das ganze wäre ja so ziemlich einfach^^, ABER die Daten müssen nach dem timestamp sortiert werden. Die Resultatstabelle muss so aussehen:

    wenn ts_1< ts_2 -> ts_1,col_1,col_2,NULL
    wenn ts_1>ts_2 -> ts_2,NULL,NULL,col_4
    wenn ts_1=ts_2 -> ts_1,col_1,col_2,NULL
    ts_2,NULL,NULL,col_4

    Ich versuche ein SQL Stmt zu vormulieren, dass mir aus den obigen beiden Stmts dieses eben beschrieben Resultat liefert.

    Das müsste ja irgendwie so gehen:

    SELECT ... , col_1,col_2,col_4 FROM stmt_a, stmt_b

    aber wie bringe ich jetzt diese Abhängigkeiten rein??? hab da mal was von CASE gelesen, weiss aber nicht recht, wie^^

    Wenn noch Fragen sind, bitte Fragen.

    Gruss

    Valentin

  • #2
    http://www.tizag.com/sqlTutorial/sqlcase.php
    Christian

    Comment

    Working...
    X