Announcement

Collapse
No announcement yet.

Case

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

  • Case

    Hallo
    Ich bin mir eben ein Report am basteln, der die Flugstunden nur zeigen soll, wenn das Departure Date kleiner ist als das SYSDATE. Anonsten soll er NA ausgeben. Doch wie mache ich dies??

    Das Problem ist, dass ich die ELSE Klausel nicht korrekt habe
    Wo liegt der Fehler?

    Grüsse Roland
    Code:
    CASE
    WHEN DEPARTURE_DATE_SCD > SYSDATE THEN 'N/A' ELSE  
    to_date(to_char(ARRIVAL_DATE, 'yyyymmdd')||substr(ARRIVAL_TIME, 1, 2)||substr(ARRIVAL_TIME, 3, 2), 'yyyymmddhh24mi') - to_date(to_char(DEPARTURE_DATE, 'yyyymmdd')||substr(DEPARTURE_TIME, 1, 2)||substr(DEPARTURE_TIME, 3, 2), 'yyyymmddhh24mi'))*24*60*60 END as FlightTime
    Zuletzt editiert von ambros; 19.09.2007, 11:45.

  • #2
    Es fehlt das END

    Comment


    • #3
      Originally posted by Markus Kinzler View Post
      Es fehlt das END
      Auch mit END geht es nicht

      Comment


      • #4
        Hallo,

        Kann es sein, dass es an den verschiedenen Datentypen liegt?
        erster Case: 'N/A' ist ein String
        zweiter Case: (...) * ... ergibt einen numerischen Wert

        Vielleicht versuchst du es mal anstelle von 'N/A' mit -1 oder sowas in der Art.

        HTH
        *-- robert.oh. --*

        Comment

        Working...
        X