sqlserver 中求一简单sql 与日期有关
时间:2011-12-15
来源:互联网
sqlserver 资料库
有这样一个表 test
有栏位 其中date1 与 date2 为日期型
id date1 date2
1 2011-11-08 NULL
2 NULL 2011-10-03
3 NULL NULL
4 2011-10-09 2011-11-08
5 2012-01-09 2017-11-07
现在要求得到数据
id date1 date2 a1 b1
1 2012-11-08 NULL N N
2 NULL 2011-10-03 N Y
3 NULL NULL N N
4 2011-10-09 2011-11-08 Y Y
5 2012-01-09 2017-11-07 Y N
其中 当 date1 中的日期 小于当前日期+180 天时,a1中显示 Y 否则显示N
其中 当 date2 中的日期 小于当前日期+30 天时,a2中显示 Y 否则显示N
有这样一个表 test
有栏位 其中date1 与 date2 为日期型
id date1 date2
1 2011-11-08 NULL
2 NULL 2011-10-03
3 NULL NULL
4 2011-10-09 2011-11-08
5 2012-01-09 2017-11-07
现在要求得到数据
id date1 date2 a1 b1
1 2012-11-08 NULL N N
2 NULL 2011-10-03 N Y
3 NULL NULL N N
4 2011-10-09 2011-11-08 Y Y
5 2012-01-09 2017-11-07 Y N
其中 当 date1 中的日期 小于当前日期+180 天时,a1中显示 Y 否则显示N
其中 当 date2 中的日期 小于当前日期+30 天时,a2中显示 Y 否则显示N
作者: xinhao_ 发布时间: 2011-12-15
麒麟電視PC版 無合約
獨家中文高清及多達90個中港臺頻道 月費$12.99起,北美用戶14天免費體驗!
獨家中文高清及多達90個中港臺頻道 月費$12.99起,北美用戶14天免費體驗!
作者: bancxc 发布时间: 2011-12-15
SQL code
select *, a1=case when date1<dateadd(day,180,getdate()) then 'Y' else 'N' end, a2=case when date2<dateadd(day,180,getdate()) then 'Y' else 'N' end from tb
作者: ssp2009 发布时间: 2011-12-15
SQL code
create table tb(id int,date1 datetime,date2 datetime) insert into tb select 1,'2011-11-08',null union select 2,null,'2011-10-03' select *, a1=case when date1<dateadd(day,180,getdate()) then 'Y' else 'N' end, a2=case when date2<dateadd(day,30,getdate()) then 'Y' else 'N' end from tb /* id date1 date2 a1 a2 ----------- ----------------------- ----------------------- ---- ---- 1 2011-11-08 00:00:00.000 NULL Y N 2 NULL 2011-10-03 00:00:00.000 N Y (2 行受影响)
作者: ssp2009 发布时间: 2011-12-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28