sql >> Database teknologi >  >> RDS >> Mysql

Få samlet antal arbejdstimer på en dag mysql

SELECT `User_id`, time(sum(`Date_time`*(1-2*`in_out`)))
  FROM `whatever_table` GROUP BY `User_id`;

Termen (1-2*`in_out`) giver hver login-begivenhed en -1-faktor og hver logout-begivenhed en +1-faktor. sum funktion tager summen af ​​Date_time kolonne, og GROUP BY `User_id` gør, at summen for hver forskellig bruger oprettes.



  1. Doktrin bevarer ikke enhed med booleske værdier og PDO::ATTR_EMULATE_PREPARES =falsk i Mysql

  2. Hvordan lister jeg alle tabeller i alle databaser i SQL Server i et enkelt resultatsæt?

  3. Hvordan fjerner man en unik begrænsning i SQL?

  4. ODBC-opkald mislykkedes med lagret procedure - Send forespørgsel igennem