sql >> Databasteknik >  >> RDS >> Oracle

Hur använder man fallbeskrivning i vilket tillstånd?

Predikatet för en CASE uttryck (dvs det som kommer efter THEN ) måste vara ett värde snarare än logik. Du kan omformulera din WHERE klausul enligt följande:

WHERE
    p.resource_qry_seq = b.resource_qry_seq AND
    p.resource_id = b.resource_id AND
    ((b.flexible_time IS NULL AND
        (b.activity_start >= p.activity_start AND b.activity_end < p.activity_end) OR
        (b.activity_start > p.activity_start  AND b.activity_end <= p.activity_end)) OR
    (b.flexible_time IS NOT NULL AND b.activity_start > p.late_start))



  1. Vad är ett alternativ till markörer för sql-looping?

  2. Hur upptäcker man dödlägen i Mysql / innodb?

  3. Java 1.6 och Oracle JDBC 14 setQueryTimeout fungerar inte

  4. ASP MVC MsSql till MySQL migrering