none
SQL Query If ... return tabel RRS feed

  • Frage

  • Hello!

    My tabel:

    JobID|JobDateTime|Result
      1|        time1|       intval1
      1|        time1|       intval1
      1|        time1|       intval1
      2| time1| intval2
      2| time1| intval1
      2| time1| intval2
      1| time2| intval3
      1| time2| intval2
      2| time2| intval1
    ...

    Well, first of all I want get the last entries like:

    JobID|JobDateTime|Result
    1| time1| intval1
    1| time1| intval1
      1| time1| intval1
      2| time1| intval2
    2| time1| intval1
    2| time1| intval2

    Query:
    select T1.JobID, T2.JobDateTime, Result from T1
    join (select JobID, MAX(JobDateTime) as JobDateTime from T1 group by JobID)T2
    on T1.JobID = T2.JobID and T1.JobDateTime = T2.JobDateTime

    that was the easy part.

    Now, I want to get a tabel with one row for each Job. Condition: If a Job has one result unlike intval1 return JobID|time1|intval2 else return JobID|time1|intval1 like:

    JobID|JobDateTime|Result
    1| time1| intval1
    2| time1| intval2

    In other words, I want to use these intval (integer value) as boolean expressions. Ideas? 

    Dienstag, 13. September 2011 09:45

Antworten

Alle Antworten