sql 查询 当天 当月 上月 记录

原创 2011年01月13日 16:58:00

 


当天

SQL Server:

select top 10 * from test where day(dateandtime)=day(getdate())
select * from test  where datediff(d,day(dateandtime),day(getdate()))=0

Access:select top 10 * from test where day(dateandtime)=day(now())

test是表,dateandtime是日期/时间字段

上月

select * from 表名 where datediff(month,日期字段,getdate())=1

 

重点:datediff()函数

DateDiff 函数

返回两个日期之间的时间间隔。

DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])

DateDiff 函数的语法有以下参数:

参数

interval

必选项。String expression 表示用于计算 date1date2 之间的时间间隔。有关数值,请参阅“设置”部分。

date1, date2

必选项。日期表达式。用于计算的两个日期。

Firstdayofweek

可选项。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。

Firstweekofyear

可选项。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。

设置

interval 参数可以有以下值:

设置 描述
yyyy
q 季度
m
y 一年的日数
d
w 一周的日数
ww
h 小时
n 分钟
s

firstdayofweek 参数可以有以下值:

常数 描述
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbSunday 1 星期日(默认)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六

firstweekofyear 参数可以有以下值:

常数 描述
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
vbFirstFullWeek 3 由在新的一年中第一个完整的周开始。

说明

DateDiff 函数用于判断在两个日期之间存在的指定时间间隔的数目。例如可以使用 DateDiff 计算两个日期相差的天数,或者当天到当年最后一天之间的星期数。

要计算 date1date2 相差的天数,可以使用“一年的日数”(“y”)或“日”(“d”)。当 interval 为“一周的日数”(“w”)时,DateDiff 返回两个日期之间的星期数。如果 date1 是星期一,则 DateDiff 计算到 date2 之前星期一的数目。此结果包含 date2 而不包含 date1。如果 interval 是“周”(“ww”),则 DateDiff 函数返回日历表中两个日期之间的星期数。函数计算 date1date2 之间星期日的数目。如果 date2 是星期日,DateDiff 将计算 date2,但即使 date1 是星期日,也不会计算 date1

如果 date1 晚于 date2,则 DateDiff 函数返回负数。

firstdayofweek 参数会对使用“w”和“ww”间隔符号的计算产生影响。

如果 date1date2 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date1date2 被包括在引号 (" ") 中并且省略年份,则在代码中每次计算 date1date2 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。

interval 为“年”(“yyyy”)时,比较 12 月 31 日和来年的 1 月 1 日,虽然实际上只相差一天,DateDiff 返回 1 表示相差一个年份。

下面的示例利用 DateDiff 函数显示今天与给定日期之间间隔天数:

Function DiffADate(theDate)
  DiffADate = "从当天开始的天数:" & DateDiff("d", Now, theDate)
End Function

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SQL语句,查询当月,当年数据

  • 2011年12月29日 15:01
  • 1KB
  • 下载

SQL语句统计每天、每月、每年的销售总额

  • 2013年09月16日 14:54
  • 1003B
  • 下载

SQL语句统计每天、每月、每年的数据

1、每年 select year(ordertime) 年, sum(Total) 销售合计 from 订单表 group by year(ordertime) 2、每月 select year(o...
  • changhong009
  • changhong009
  • 2016年06月13日 21:52
  • 2210

Oracle 查询当天、当周、当月和当季度的所有记录

Oracle 字段类型为varchar2,格式要与格式化的样式匹配 当天 select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh...
  • jmxiaocai
  • jmxiaocai
  • 2011年12月17日 23:38
  • 5159

sqlserver 查询当日、当月数据

--查询当天:    select * from info where DateDiff(dd,datetime,getdate())=0       --查询24小时内的:    s...
  • wd4java
  • wd4java
  • 2016年02月19日 15:37
  • 9408

oracle统计一年中每个月的数据

使用场景:统计支出表中某人某年的每个月的支出情况 1.创建表如下(oracle) --支出表   create table PAY   (     ID ...
  • 99guo
  • 99guo
  • 2014年02月19日 10:59
  • 8518

Mysql查询某个月的每一天的数据

需求:查询最近三个月的每一天的业绩总和因为最近三个月每个月的天数是不一样,所以不能用这篇文章:Mysql查询最近30天的数据(每天的业绩总和数据) 介绍的用固定多少天去查数据。需要一个新方法。一、生成...
  • Axela30W
  • Axela30W
  • 2017年09月04日 16:56
  • 1000

SQL 查询当天、本周、本月记录

--本周 select * from 表 where DateDiff(week,表对应字段,'2016-09-14')=0 --本天 select * from 表 where DateDiff(...
  • jiangcsc
  • jiangcsc
  • 2016年12月12日 14:00
  • 237

Sql server 取当天或当月的记录

jsp向数据库中添加日期      MS SQL SERVER:    NSERT into student(studentid,time1)values('15',getdate());   ...
  • wy978651775
  • wy978651775
  • 2014年05月08日 10:18
  • 5216

mysql 统计每个门店 每天 每月 每年 的订单 消费总额

mysql 统计每个门店 每天 每月 每年 的订单 消费总额,如下sql是按照每年 取前10 select ab.Id id,b.Name name,sum(dc) dc,sum(mc) mc,su...
  • weitongyixun
  • weitongyixun
  • 2016年06月19日 23:32
  • 3342
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sql 查询 当天 当月 上月 记录
举报原因:
原因补充:

(最多只允许输入30个字)