sqlserver如何比较两个日期(datetime)的年月大小,比较到年月,不比较日
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver如何比较两个日期(datetime)的年月大小,比较到年月,不比较日相关的知识,希望对你有一定的参考价值。
select * from xxxx where datediff(m,dt1,dt2)datediff:日期比较函数,SQL server自带的,会将比较的两个日期比较部分的差值返回,m表示比较月 参考技术A 更正一下2L:
select * from 表
where year(日期字段1)<year(日期字段2)
or
(year(日期字段1)=year(日期字段2) AND month(日期字段1)<month(日期字段2) ) 参考技术B select * from 表
where year(日期字段1)<year(日期字段2) AND month(日期字段1)<month(日期字段2)
只要保持比较运算符一致就行 参考技术C 不是吧。。。datetime,直接比就是了。。 参考技术D select * from tab where convert(varchar(7),dtcol1,120) < convert(varchar(7),dtcol2,120)
DateTime.Compare(t1,t2)比较两个日期大小
DateTime.Compare(t1,t2)比较两个日期大小,排前面的小,排在后面的大,比如:2011-2-1就小于2012-3-2
返回值小于零: t1 小于 t2。
返回值等于零 : t1 等于 t2。
返回值大于零: t1 大于 t2。
如:
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ConsoleApplication1
- {
- class Program
- {
- static void Main(string[] args)
- {
- DateTime t1 = DateTime.Parse("2011-2-2");
- DateTime t2 = DateTime.Parse("2011-3-1");
- if (DateTime.Compare(t1, t2) > 0)
- Console.WriteLine("t1 > t2");
- if (DateTime.Compare(t1, t2) == 0)
- Console.WriteLine("t1 == t2");
- if (DateTime.Compare(t1, t2) < 0)
- Console.WriteLine("t1 < t2");
- }
- }
- }
运行结果:
t1 < t2
请按任意键继续. . .
文章出处:https://blog.csdn.net/aspnet2002web/article/details/6171415
以上是关于sqlserver如何比较两个日期(datetime)的年月大小,比较到年月,不比较日的主要内容,如果未能解决你的问题,请参考以下文章