sql server日期字段值的比较
sql server中对日期字段值的比较
sql server中对日期字段的比较方式有多种,介绍几种常用的方式:
用northwind库中的employees表作为用例表。
1.between...and语句的使用:
说明:between...and用于指定测试范围
看以下实例:
执行sql语句“SELECT hiredate FROM employees”显示结果如下:
hiredate
1992-05-01 00:00:00.000
1992-08-14 00:00:00.000
1992-04-01 00:00:00.000
1993-05-03 00:00:00.000
1993-10-17 00:00:00.000
1993-10-17 00:00:00.000
1994-01-02 00:00:00.000
1994-03-05 00:00:00.000
1994-11-15 00:00:00.000
从以上结果集中搜索出hiredate在"1993-10-17"到"1994-01-02"的记录,则sql语句如下:
SELECT hiredate
FROM employees
WHERE hiredate between cast('1993-10-17' as datetime) and cast('1994-01-02' as datetime)
执行该语句后结果如下:
hiredate
1993-10-17 00:00:00.000
1993-10-17 00:00:00.000
1994-01-02 00:00:00.000
以上sql语句中出现between...and和cast,其中cast是类型转换函数:在该例中将字符串转换成日期型值.
在WHERE中用between...and把"1993-10-17"到"1994-01-02"的记录搜索出来.2.两个日期值的比较大小可以用< <= > >=运算符,和datediff函数datediff函数:DATEDIFF ( datepart , startdate , enddate )datepart的取值可以是year,quarter,Month,dayofyear,Day,Week,Hour,minute,second,millisecond startdate 是从 enddate 减去。如果 startdate 比 enddate 晚,返回负值。看以下实例:搜索hiredate的值在"1993-05-03"后的记录,该sql语句如下:SELECT hiredateFROM employeesWHERE datediff(day,cast('1993-05-03' as datetime),hiredate) >0执行该语句后结果如下:hiredate1993-10-17 00:00:00.0001993-10-17 00:00:00.0001994-01-02 00:00:00.0001994-03-05 00:00:00.0001994-11-15 00:00:00.000因此datediff(day,cast('1993-05-03' as datetime),hiredate)是把hiredate的值按"day"减去cast('1993-05-03' as datetime)的值.通过判定相减后值的正负来判定日期的先后
sql server日期字段值的比较的更多相关文章
- SQL Server 日期字段作为查询标志字段的注意事项
今天在做一个数据抽取程序时遇到一个问题困扰好久才解决,这不是技术问题,而是常识和细心的问题.写出来让大家引起重视一下. 由于之前的程序长期用Oracle,并且数据标志字段采用的日期类型.在Oracle ...
- SQL SERVER 2008 字段值合并
/** * 通过 FOR XML PATH 语句,可以将字段的值进行合并. **/ CREATE TABLE tb_child ( name ), hobby ) ) go INSERT INTO t ...
- Sql Server 增加字段、修改字段、修改类型、修改默认值(转)
转:http://www.cnblogs.com/pangpanghuan/p/6432331.html Sql Server 增加字段.修改字段.修改类型.修改默认值 1.修改字段名: alter ...
- SQL Server为字段添加默认值
SQL Server为字段添加默认值 if not exists ( select * from sys.columns as c join sys.objects as o on c.default ...
- access日期与sql server日期区别
如选取一段时间内的数据,time1和time2是时间起始字符串,则 sql server命令: string strSQL=" 日期 >='"+time1+"' A ...
- SQL Server数据库字段类型说明
SQL Server数据库字段类型说明 目前Sql Server 数据库一共有X个字段类型,大体分为9类,分别是字符串类型.二进制码字符串数据类型.Unincode字符串数据.整数类型.精确数据类型. ...
- sql server日期时间转字符串
一.sql server日期时间函数Sql Server中的日期与时间函数 1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基 ...
- sql server 日期
在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...
- SQL Server日期时间格式转换字符串详解 (详询请加qq:2085920154)
在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...
随机推荐
- android 修改背景色(转)
修改为黑底白字 修改AndroidManifest.xml把android:theme="@style/AppTheme" 修改为android:theme="@andr ...
- (step5.1.3)hdu 1213( How Many Tables——1213)
题目大意:输入两个整数n,m.分别表示点数.对点的操作的次数.在接下来的m行中,每行有两个整数a,b.表示a和b是好朋友.(不是好朋友的不能坐在同一个桌子上) .求需要多少张桌子 解题思路:并查集 1 ...
- apache2.4.x三种MPM介绍
三种MPM介绍 Apache 2.X 支持 ...
- UISearchBar去除底部黑线问题
有时我们在设置搜索框的时候底部会出现一条黑线,要 去除这黑线只需设置. [self.searchBar setBackgroundImage:[UIImage new]];
- 机器学习笔记(三)- from Andrew Ng的教学视频
week four: Non-linear hypotheses:Neural Networks -->x1 and x2 x1 XNOR x2 ->a1->x1 and x2;a2 ...
- OpenSSL命令---rand
用途: 用来产生伪随机字节.随机数字产生器需要一个seed,先已经说过了,在没有/dev/srandom系统下的解决方法是自己做一个~/.rnd文件.如果该程序能让随机数字产生器很满意的被seeded ...
- 我的Python成长之路---第三天---Python基础(13)---2016年1月16日(雾霾)
五.Python的常用的内置函数 Python为我们准备了大量的内置函数,如下图所示 这里我们只讨论红框内的内置函数 abs(x) 返回一个数的绝对值(模),参数可以是真说或浮点数 >>& ...
- 使用MongoDB的开源项目(转)
根据谷歌的搜索结果筛选出来的. 统计应用 counlty https://count.ly/ mongopress 开源CMS系统 http://www.mongopress.org/ Rubedo ...
- bootstrap scaffold框架
这是一段典型的html typical HTML file: <!DOCTYPE html> <html> <head> <title>Bootstra ...
- 使用zxing生成二维码 - servlet形式
因为项目有个功能需要打印二维码,因为我比较喜欢使用html+css+js实现,所以首先想到的是jquery.qrcode.js插件,这个插件可以用canvas和table生成二维码,效果也不错,不过对 ...