我有一个问题是尝试在where表条件中使用在我的表中定义为decimal(17)
的字段来与商店过程中的字符串进行比较
table1.datedecimal decimal(17)
我的SQL查询是
select field1, field2
from table1
where table1.datedecimal >= cast(cast('3-10-2011' as datetime) as decimal)
and table1.datedecimal <= cast(cast('24-10-2011' as datetime) as decimal)
但我的查询返回0行
如果有人可以帮助我,我很感激! 感谢
答案 0 :(得分:0)
这确实不足以找到问题的信息。 '10-3-2011'
decimal
40817.0
为'10-24-2011'
。 decimal
40838.0
datetime
为decimal
。手动查看表格,看看是否有任何值落在这个值之间。
当你没有得到你期望的查询结果时,你真的需要分析数据和逻辑。
另一方面,这是使用错误的数据类型来存储某些数据的缺点之一。将{{1}}存储为{{1}},我认为没有任何好处。