server sql 时间差分钟_sql server 计算时间差的一部分函数【转】

在做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

转载地址: http://www.devdo.net/sql-server-query-date.html

合并两个表同时查询

例如:

table a  有字段 id   name  age

table b 有字段 id  sex  address

查询的sql:  select * from (select id,name,age,null sex,null address from a union all select id,null name,null age,sex,address from b)

原理:让两个表都有同样的字段名,null sex==null as sex,因为a表没有sex列,所以我们定义一个为null的列。这样就能和b表有同样的列。

union all 就是查询两个表的所有数据显示。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值