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

SQL problém s cenami hotelových rezervací

Mezi 2011-04-16 16:00 a 2011-04-15 00:00 je jeden den a 16 hodin, proto váš DATEDIFF(...)+1 se vrací (správně) 1+1 den.

Problémem je zde nesoulad mezi časem, kdy host přichází/odchází (kolem poledne) a časem, kdy se mění sazba (o půlnoci).

Musíte zkontrolovat své požadavky, ale pravděpodobně byste mohli ignorovat poslední částečný den a nechat hosta "odejít" v 2011-04-15 23:59:59 pro účely výpočtu sazby. Stejně tak nechejte hosta „dorazit“ 14. 4. 2011 00:00:00. Hodiny navíc v první den vynahradí chybějící hodiny v poslední den.



  1. Yii Spuštění dotazu MySql

  2. Jak mohu vybrat mezi 1. dnem aktuálního měsíce a aktuálním dnem v MySQL?

  3. Proč nemohu generovat dotaz pomocí vztahů?

  4. Použijte alias tabulky v jiném dotazu k procházení stromu