170406回顾-SQL Server的smalldatetime类型比较[通俗易懂]

170406回顾-SQL Server的smalldatetime类型比较[通俗易懂]在比较SQLServer的类型为smalldatetime字段时出现下面的错误:将expression转换为数据类型smalldatetime时出现算术溢出错误正确的比较方法如下:将long型转换为时间格式的字符串,再与smalldatetime类型的字段比较SELECT*FROMtablenameWHEREEditFlag>’2017/3…

大家好,又见面了,我是你们的朋友全栈君。

在比较SQL Server的类型为smalldatetime字段时出现下面的错误:将 expression 转换为数据类型 smalldatetime 时出现算术溢出错误

170406回顾-SQL Server的smalldatetime类型比较[通俗易懂]

 

正确的比较方法如下:将long型转换为时间格式的字符串,再与smalldatetime类型的字段比较

SELECT * FROM tablename WHERE EditFlag > ‘2017/3/27 11:22:00’ order by EditFlag

 

尝试了使用SQL Server的内部函数将long转换后比较,但是失败了:

sql1 = SELECT * FROM dbo.BC_patrolrecord WHERE EditFlag > date(149058492000) order by EditFlag

 

根据下面链接中的内容再次进行了尝试:

http://www.cnblogs.com/leoning/archive/2011/01/04/1925229.html

将long除以1000、再除以60,将其转换为分钟数进行比较,也失败了:

sql1 = SELECT * FROM dbo.BC_patrolrecord WHERE EditFlag > 149058492000/1000/60 order by EditFlag

 

在SQL Server客户端工具中做了下面的尝试:看来还得想想怎么和数字比较

select * from BC_patrolrecord where EditFlag > 149058492000; — 失败

select * from BC_patrolrecord where EditFlag > 149058492; — 失败

select * from BC_patrolrecord where EditFlag > 149058; — 失败

select * from BC_patrolrecord where EditFlag > 14905; — 成功

 

线索:“smalldatetime占4字节,精度1分钟,时间从1900.1.1到2079.6.6”有关系?

每天1440分钟,从1900.1.1算起到现在大约有1440*365*116+1440*30*3+1440*7=X分钟,这个X远远大于149058了。

 

下面是找到的另一篇文档,提到了一个convert函数:或可一试

http://www.myexception.cn/sql-server/159157.html

 

转载于:https://www.cnblogs.com/luo630/p/6676795.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144703.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mybatisplus自定义拦截器_springboot自定义拦截器

    mybatisplus自定义拦截器_springboot自定义拦截器文章目录自定义MyBatis拦截器作用MyBatis中的四大核心对象在mybatis中可被拦截的类型有四种(按照拦截顺序)拦截器需要实现Mybatis提供的Interceptor接口利用反射获取运行中的实体字段的名字利用反射动态的为sql语句传递新参数使用mybatis自定义的拦截器为插入,更新语句自动赋值的时候的小bug使用自定义MyBatis拦截器在对数据库进行更新插入的时候动态添加修改人,创建人参数定义拦截器类在mybatis的配置文件中声明拦截器在mapper映射文件中获取拦截器中设置的参数验证结果

    2022年9月9日
  • chrome下老是弹出网页显示 true

    chrome下老是弹出网页显示 true

    2021年11月28日
  • 基于FPGA的CAN接口开发

    基于FPGA的CAN接口开发基于Xilinx的A7系列FPGA的CAN总线协议开发一、CAN总线协议介绍CAN是ControllerAreaNetwork的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。可以用来满足“多总线通信时,线束的数量过多”、“通过多个LAN,进行大量数据的高速通信”的需要。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN控制器根据两根线上的电位差来判断总线电平。总线电平分为显性电平和隐性电平,二者必居其一。发送方通过使总线电平发生变化

    2022年6月17日
  • 环境贴图_HDR高清环境贴图

    环境贴图_HDR高清环境贴图以前自己看过shader,最近因为被客户逼着搞效果,只能自个儿捣鼓shader。好友把我深深鄙视一番。只好自己单独写篇环境贴图的文章,来小总结一下。环境贴图(EnvironmentMapping)

    2022年8月1日
  • STL库基础学习

    STL库基础学习目录1.什么是STL库2.几种常见的STL模板(1)vector1.vector向量模板2.vector迭代器3.常见方法与用法(2)list(3)queue和stack(4)set和map3.几种STL的时间复杂度比较1.什么是STL库◦STL又称为标准模板库,是一套功能强大的C++模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。◦也就是说,有了STL,数据结…

    2022年10月15日
  • 私有IP地址_ipv6私有地址

    私有IP地址_ipv6私有地址私有IP地址:在ABC三类网络中,如下三段网络地址为私有IP地址,如何人都可以自行在自己的局域网中使用这些IP地址.A类私有:10.0.0.110.255.255.254B类私有:172.16

    2022年8月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号