【发布时间】:2014-10-01 11:37:17
【问题描述】:
我在 Sql Server 中遇到问题,只能从 DateTime 中选择日期部分。
DateTime 的值为 2014-05-01 00:00:00.000。
如果尝试这个查询我没有错误并且输出是正确的:
SELECT CONVERT(VARCHAR(10),'2014-05-01 00:00:00.000',110)
2014-05-01
如果在 doTable 中尝试了其他查询:
SELECT
TOP 100 *
FROM
[n].[a2].[DOTABLE]
WHERE
CONVERT(VARCHAR(10),data,110) > DATEADD(DAY, - 1, getdate())
ORDER BY
data DESC;
我有这个错误:
SQL Server Error Messages - Msg 242 -
The conversion of a char data type to a datetime data type
resulted in an out-of-range datetime value.
SQL server 的版本是:
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86)
Oct 14 2005 00:33:37
Copyright (c) 1988-2005 Microsoft Corporation
Standard Edition on Windows NT 6.1 (Build 7600: )
我想我做得不对,但我知道为什么。
【问题讨论】:
-
数据列中存储的日期格式是什么?
-
数据列中存储的日期格式为datetime
标签: sql sql-server datetime