sql >> Databáze >  >> RDS >> Mysql

Průsečík období v SQL

Pokud by váš příklad měl mít v prvním řádku uvedeno 70, pak

za předpokladu, že @range_start a @range_end jako vaše parametry podmínky:

SELECT SUM( LEAST(@range_end, stop) - GREATEST(@range_start, start) )
FROM Table
WHERE @range_start < stop AND @range_end > start

pomocí největší /nejméně a funkce data měli byste být schopni získat to, co potřebujete, přímo pomocí typu data.



  1. Použití .aggregate() na hodnotu zavedenou pomocí .extra(select={...}) v dotazu Django?

  2. Změna formátu data v dotazu

  3. Problém s vytvořením cizího klíče v Oracle

  4. PHP PDO Bit(1) vrací nesprávný datový typ