sql >> Database teknologi >  >> RDS >> Oracle

Hvordan bruger man case statement i hvor tilstand?

Prædikatet for en CASE udtryk (dvs. hvad der kommer efter THEN ) skal være en værdi snarere end logik. Du kan omformulere din WHERE klausul som følger:

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. Forsøger at uploade bruger-id til databasen, Session returnerer bruger-id som null?

  2. Lagring af DateTime (UTC) vs. lagring af DateTimeOffset

  3. Brug af arbejdsgangsmønstre til at administrere enhver enheds tilstand

  4. Postgres Funktion til at indsætte flere poster i to tabeller