‘壹’ 如何在sql中按时间段查询数据
sql server:
select * from 表 where 发生日期>'2008-7-1' and 发生日期<'2008-12-31'
access:
select * from 表 where 发生日期>#2008-7-1# and 发生日期<#2008-12-31#
这样就可以了,注意sql server与access中的日期有一点不一样。
(1)指定时间段的sql语句扩展阅读:
sql查询日期语句
select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查询当天日期在一周年的数据
select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0 //查询当天的所有数据
SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天
SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 //上一月
查询当天记录另类的方法:
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1)
ORDER BY GAddTime DESC
‘贰’ SQL Server数据库中限制某一个用户在指定时间段内登录的SQL语句
select
*
from
学生表
select
学号,姓名,年龄
from
学生表
select
学号,姓名,年龄,系名
from
学生表
where
年龄>=18
&&
年龄<=20
如果系名在别的表里,关联下.
select
学号,姓名,年龄,系信息表.系名
from
学生表,系信息表
where
年龄>=18
&&
年龄<=20
sql挺简单的看看例题都一个样模仿的写就行了
‘叁’ SQL语句时间段问题
SQL时间段查询 :
ACCESS
select * from table where date1<#2008-1-20# and date2>#2007-8-30#
MYSQL
select * from table where date1<'2008-1-20' and date2>'2007-3-30'
也可以 :
select * from table where date1 between '2008-1-20' and '2007-3-30'
其中date1,date2都是日期类型的字段。
SQL时间型查询语句:
2007年12月04日 星期二 13:54
select * from jy_jjgl a ,jy_jygl b where convert(varchar(10),a.shtime,120)='2007-11-27'
1.显示本月第一天
SELECT DATEADD(mm,DATEDIFF(mm,0,getdate()),0)
select convert(datetime,convert(varchar(8),getdate(),
120)+'01',120)
2.显示本月最后一天
select dateadd(day,-1,convert(datetime,convert
(varchar(8),dateadd(month,1,getdate()),120)+'01',120))
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,getdate())+1,0))
3.上个月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm,DATEDIFF(mm,0,getdate()),0))
4.本月的第一个星期一i
select DATEADD(wk,DATEDIFF(wk,0, dateadd(dd,6-datepart(
day,getdate()),getdate())),0)
5.本年的第一天
SELECT DATEADD(yy,DATEDIFF(yy,0,getdate()),0)
6.本年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0))
7.去年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy,DATEDIFF(yy,0,getdate()),0))
8.本季度的第一天
SELECT DATEADD(qq,DATEDIFF(qq,0,getdate()),0)
9.本周的星期一
SELECT DATEADD(wk,DATEDIFF(wk,0,getdate()),0)
10.查询本月的记录
select * from tableName where DATEPART(mm, theDate)
=DATEPART(mm, GETDATE()) and DATEPART(yy, theDate)
= DATEPART(yy, GETDATE())
11.查询本周的记录
select * from tableName where DATEPART(wk, theDate) = DATEPART
(wk, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
12查询本季的记录 注:其中:GETDATE()是获得系统时间的函数。
select * from tableName where DATEPART(qq, theDate) = DATEPART
(qq, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
13.获取当月总天数:
select DATEDIFF(dd,getdate(),DATEADD
(mm, 1, getdate()))
select datediff(day,
dateadd(mm, datediff(mm,'',getdate()), ''),
dateadd(mm, datediff(mm,'',getdate()), '1900-02-01'))
14.获取当前为星期几
DATENAME(weekday, getdate())
‘肆’ 求一SQL查询语句,查询每天某一时间段记录。
举例如下:
select * from timetable
where datediff(mi,'2008-10-10 8:00:00',timet)>=1 and datediff (mi,'2008-10-10 9:00:00',timet)<=30
‘伍’ 关于时间段查询的SQL语句应该怎么写
各个数据库的时间函数不一样,我以mysql举例
now()
j就是当前时间,
now()
-
INTERVAL
XX
DAY
就是当前时间以前
XX天下
面先就是查询昨天到8天以前的sql例子
----------------------------
SELECT
*
FROM
`users`
k
WHERE
k.`create_time`
BETWEEN
NOW()
-
INTERVAL
8
DAY
AND
NOW()
-
INTERVAL
1
DAY
‘陆’ sql语句判断时间区间的问题
1、首先,我们来定义一个时间字段的参数,暂且命名为Date,语句为:declare @Date datetime。
‘柒’ SQL语句查询特定时间段的数据怎么写
SQL服务器:
Select*fromtablewhere'2008-7-1'和'2008-12-31'
访问:
从表中选择发生日期>#2008-7-1#和发生日期<#2008-12-31#
就是这样:注意,SQLserver中的日期和访问有一点不同。
(7)指定时间段的sql语句扩展阅读:
SQL查询日期语句
Select*fromShopOrderwheredatediff(week,ordTime,getdate()-1)=0//查询第一年的日期
Select*fromShopOrder,其中datediff(day,ordTime,getdate()-1)=0//查询当天的所有数据
SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天
SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 //上个月
搜索当天记录的其他方法:
SELECT*
FROMj_GradeShop
其中(GAddTimeBETWEENCONVERT(datetime,LEFT(GETDATE(),10)+'00:00:00.000'))
并转换(datetime,LEFT(GETDATE(),10)+'00:00:00.00.000')+1)
由GAddTime指定的订单
‘捌’ ACCESS SQL语句 指定日期间, 昼间(就是白天比如6:00--18:00)平均数据SQL怎么写
我模拟了你的数据。你要的结果是这样的吧:
转化为SQL语句则如下:
SELECTDateValue([时间])AS日期,Avg(数据)AS指定时间的平均值
FROM表4
WHERETimeValue([时间]) Between#6:0:0#And#18:0:0#
GROUPBYDateValue([时间]);
说明:datevalue()函数返回时间的“年月日”;timevalue()函数返回时间的“分时秒”。
‘玖’ MYSQL执行sql语句,批量更改为指定时间段的随机时间
1、首先打开mysql,连接一个数据库,点击上方的【查询】按钮,再点击【新建查询】,如图所示。