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

Problém SQL s časy pokladny

Hádám, že chcete najít rozdíl mezi minimální dobou odbavení (kde typ kontroly =1) a maximální dobou odbavení (kde typ kontroly =0)

select userID,
    min_date,
    max_date,
    (max_date - min_date) diff
from (
    select distinct userID,
        (
            select min(checktime) 
            from checkinout t2
            where t1.userID = t2.userID
                and t2.checktype = 1
        ) min_date,
        (
            select max(checktime) 
            from checkinout t3
            where t1.userID = t3.userID
                and t3.checktype = 0
        ) max_date
    from checkinout t1
    )
order by userID



  1. Proč nemůžete použít OR nebo IN s operací OUTER JOIN?

  2. Bizarní chyba při pokusu o připojení k databázi

  3. Vyberte odemčený řádek v Postgresql

  4. Propojte MySQL s Pythonem 3.6