Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Określ logikę dla MySQL Select — system rezerwacji

Nie jestem tego w 100% pewien, ale myślę, że to zapytanie powinno być całkiem blisko:

select * from tblEvents
where (@starttime >= start && @starttime <= end) /* Starts while someone else has it */
or (@endtime >= start && @endtime <= end) /* Ends while someone else has it */
or (@startime <= start && @endtime >= end) /* Starts before & ends after someone else has it*/
and equipID = @equipID

Zastąp @starttime, @endtime i @equipID odpowiednim identyfikatorem sprzętu oraz godzinami rozpoczęcia i zakończenia wprowadzonymi przez użytkownika. Jeśli to zapytanie nie zwraca żadnych wyników, nie powinno być konfliktów czasowych.

Zasadniczo sprawdza te 3 scenariusze, gdzie *to czas rozpoczęcia i zakończenia, - to czas niewykorzystany, a | czy czas jest używany przez kogoś innego:

-|||||*|||||------*------
------*--------|||*||||--
------*--|||||||--*------


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Typo3 V6:Jak utworzyć kontener elementów treści? (bez telewizora)

  2. Dlaczego nie mogę wstawić do MySQL?

  3. MYSQL oblicza średnią z liczenia

  4. Migracja danych do Firebase z mysql

  5. Wskazówki dotyczące monitorowania MySQL dla Moodle