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

Datum mezi 2 jinými daty, bez ohledu na rok

Je třeba rozlišovat dva případy.

  1. Když first < last , data jsou ve stejném roce. Poté můžete použít between aby odpovídaly datům.

  2. Kdy first > last , znamená to last je v příštím roce. V tomto případě se shodují data date >= first OR date <= last .

Vaše klauzule WHERE by tedy měla být:

WHERE IF(first < last, @date BETWEEN first AND last,
                       @date >= first OR date <= last)



  1. Flask-SQLAlchemy - průběžné připojení k více databázím

  2. Index je mimo hranice pole. (Microsoft.SqlServer.smo)

  3. Sémantika ResultSet#getDate().

  4. PostgreSQL jak spojit hodnotu intervalu '2 dny'