sqlserver 中的datetime 值查询方法
2018/10/17 11:38:32 | 阅3522 | 来源:好空间网络 [打印] [关闭] |
数据库字段把保存为datatime类型后,取出的时候 想只取出部分,比如只取出年月日 或者只取出时间,可以用
select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08 select CONVERT(varchar(10), datatime1, 120 )2004-09-12 select CONVERT(varchar(4), datatime1, 120 )+'年'+substring(CONVERT(varchar(10), datatime1, 120 ),6,2)+'月'+substring(CONVERT(varchar(10), datatime1, 120 ),9,2)+'日' from dxck 输入格式如:2004年09月12日 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),/'-/',/'/'),/' /',/'/'),/':/',/'/') 20040912110608 select CONVERT(varchar(12) , getdate(), 111 ) 2004/09/12 select CONVERT(varchar(12) , getdate(), 112 ) 20040912 select CONVERT(varchar(12) , getdate(), 102 ) 2004.09.12 select CONVERT(varchar(12) , getdate(), 101 ) 09/12/2004 select CONVERT(varchar(12) , getdate(), 103 ) 12/09/2004 select CONVERT(varchar(12) , getdate(), 104 ) 12.09.2004 select CONVERT(varchar(12) , getdate(), 105 ) 12-09-2004 select CONVERT(varchar(12) , getdate(), 106 ) 12 09 2004 select CONVERT(varchar(12) , getdate(), 107 ) 09 12, 2004 select CONVERT(varchar(12) , getdate(), 108 ) 11:06:08 select CONVERT(varchar(12) , getdate(), 109 ) 09 12 2004 1 select CONVERT(varchar(12) , getdate(), 110 ) 09-12-2004 select CONVERT(varchar(12) , getdate(), 113 ) 12 09 2004 1 select CONVERT(varchar(12) , getdate(), 114 ) 11:06:08.177
这里的 getdate() 为你的datetime字段 ,网络上都说用 convert 但是没人告诉你getdate()要改为字段名,今天用到了,没办法自己去翻阅convert函数试用方法才知道是这样用的
在做Sql Server开发的时候有时需要获取表中今天、昨天、本周、上周、本月、上月等数据,这时候就需要使用DATEDIFF()函数及GetDate()函数了
DATEDIFF ( datepart , startdate , enddate ) 释义:计算时间差 datepare值:year | quarter | month | week | day | hour | minute | second | millisecond startdate:开始日期 enddate :结束日期 GetDate() 释义:获取当前的系统日期 下面例子中表名为tablename,条件字段名为inputdate 查询今天 SELECT * FROM tablename where DATEDIFF(day,inputdate,GETDATE())=0 查询昨天 SELECT * FROM tablename where DATEDIFF(day,inputdate,GETDATE())=1 查询本周 SELECT * FROM tablename where datediff(week,inputdate,getdate())=0 查询上周 SELECT * FROM tablename where datediff(week,inputdate,getdate())=1 查询本月 SELECT * FROM tablename where DATEDIFF(month,inputdate,GETDATE())=0 查询上月 SELECT * FROM tablename where DATEDIFF(month,inputdate,GETDATE())=1 查询本年 select * from Keywords where datediff(year, Addtime,getdate())=0