2011-08-26 57 views
0

希望有人可以提供帮助。我已经在互联网上寻找解决方案,但似乎没有解决它。将表达式转换为数据类型的算术溢出错误datetime

我想查询一个大表,只有当列等于今天的日期时才会得到结果。

这里的查询:

select [Table1].[Field1] 
from [Table1] 
where [Table1].[Field1] = GetDate() 

日期格式如下:

20020630 

我在SQL初学者所以任何帮助将非常感激,因为我成长喜欢它。

谢谢!!! :)

+0

什么数据类型是field1? – gbn

+0

林不知道,因为表是在一个链接的服务器上,我没有完全访问它,对不起。 – PDB

回答

1

要找到破值:

select [Table1].[Field1] 
from [Table1] 
where ISDATE([Table1].[Field1]) = 0 

GETDATE包括时间,所以你需要删除此。这假定SQL Server 2008+

select [Table1].[Field1] 
from [Table1] 
where [Table1].[Field1] = CAST(GetDate() AS date) 
+0

其SQL Server 2008 R2。我刚刚尝试了GetDate解决方案,并且提供以下内容: – PDB

+0

消息243,级别16,状态1,行1 类型日期不是定义的系统类型。 – PDB

+0

而第一个解决方案(ISDATE)不返回任何值。 – PDB

相关问题