sql >> Databasteknik >  >> RDS >> Mysql

MySQL datumjämförelseproblem?

Sätt dina datumvärden inom enkla citattecken eftersom de är bokstavliga strängar, annars kan inte MySQL se att det är ett datum och inte siffran (2011 MINUS 1 MINUS 1 =2009).

Du behöver inte heller DATE()-kasten runt dem.

SELECT 
  *
FROM
  shortleavedetails
WHERE
  employee_code = '17'
AND
  (DATE(authorizeddate) <= '2011-01-01'
   AND
   DATE(authorizeddate) >= '2010-05-01')


  1. får fel ORA-00907 när du skapar en tabell i sql-utvecklaren

  2. SQL join subquery

  3. Hur tar man bort data från flera tabeller?

  4. Mysql returnerar felaktigt bigint-resultat med ett, mycket konstigt fel