Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL между не включва

Това е приобщаващ. Сравнявате дати и времена с дати. Втората дата се тълкува като полунощ, когато започва денят .

Един от начините да поправите това е:

SELECT *
FROM Cases
WHERE cast(created_at as date) BETWEEN '2013-05-01' AND '2013-05-01'

Друг начин да го коригирате е с изрични двоични сравнения

SELECT *
FROM Cases
WHERE created_at >= '2013-05-01' AND created_at < '2013-05-02'

Аарон Бертран има дълъг запис в блога за дати (тук), където обсъжда този и други проблеми с датата.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Добавете редуващ се цвят на ред към отчета за услугите за отчитане на SQL Server

  2. Намерете всички таблици, съдържащи колона с посочено име - MS SQL Server

  3. T-SQL за намиране на име на отдалечен сървър на свързания сървър

  4. да мигрирате данни от MS SQL към PostgreSQL?

  5. Дата на обработка в SQL Server