当前位置:首页 » 编程语言 » sql时间段

sql时间段

发布时间: 2022-02-07 04:12:37

sql语句如何删除一段时间内的记录

1、使用BETWEEN关键字根据时间字段删除一定时间内的记录

DELETEFROM表名WHERE时间字段BETWEEN开始时间AND结束时间

示例:

'2017-01-0100:00:00'AND'2017-02-0100:00:00'
--删除tb表中2017年1月1日到2017年2月1日的数据

2、使用时间字段比较大小来确定删除范围

--语法:
DELETEFROM表名WHERE时间字段>=开始时间AND时间字段<=结束时间

示例:

DELETEFROMtbWHERECreateTime>='2017-01-0100:00:00'ANDCreateTime<='2017-02-0100:00:00'

② SQL时间段比较

CASE WHEN( KSSJ<JSSJ
AND B<KSSJ
AND A<B)
OR (KSSJ<JSSJ AND A>JSSJ AND A<B)
就满足,就是 kssj小于jssj,并且 输入的结束时间小于 kssj 满足
或者 kssj小于jssj,并且 输入的开始时间大于 jssj满足 就这2中情况

③ sql查询时间段

select * from 表 where 日期字段>='开始日期' and 日期字段<='截止日期'
and convert(char(8),日期字段,108)>='开始时间' and convert(char(8),日期字段,108)<='截止时间'

例如:
select * from tb1 where dDate>='2010-11-05' and dDate<='2010-11-15'
and convert(char(8),dDate,108)>='22:30:00' and convert(char(8),dDate,108)<='23:00:00'

④ 关于SQL时间段查询

Select * From 表名
Where to_date(日期字段,'mm/dd/yyyy hh24:mi:ss') Between
to_date('2/1/2008 00:00:00','mm/dd/yyyy hh24:mi:ss')
And to_date('2/15/2008 23:59:59 hh24:mi:ss')

日期字段最好强转下格式用to_date()

⑤ sql查询时间段

假设A表的时间字段为A_Date,B表的字段为B_Date,再假设A表的ID为B表A_Id的FK,因此建议你可以试用如下语句:
select datediff(day,A.A_Date,B.B_Date) from A,B where a.ID=b.A_Id
其中:day代表这A_Date与B_Date时间之间的天数;该参数还有其他格式,请搜索SQL帮助;
另外也可以使用select A.A_Date-B.B_Date from A,B where a.ID=b.A_Id
该语句得出的时间是距离1900-01-01 00:00:00起的时间值

⑥ 如何在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中的日期有一点不一样。

(6)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时间段的查询问题如何解决

SQL时间段的查询有两个解决代码:

1、select * from table where date between '2007-10-01' and '2008-10-01'

2、select * from table where date>'2007-10-01' and date<'2008-10-01'

其中,between包含了两头的日期,and不包含。

⑧ sql合并多个时间段

如果是oracle 我会使用一个临时表,包含人员,持续开始时间,持续结束时间,处理任务,处理方法如下

  • 首先取出某员工一天的所有工作记录,按开始时间排序后逐条处理

  • 首先将第一条记录插入到临时表中,持续开始时间为 开始时间,持续结束时间为结束时间,处理任务为1;

  • 在取到后续记录时,作如下处理

  • 如果开始时间 > 临时表中已经存在的所有结束时间,则新增一条记录,与第一条处理方式一致;

  • 如果开始时间 <=临时表中已经存在的某一结束时间处理如下

  • 如果 结束时间 <=临时表中已经存在的某一结束时间,不作任何插入和更新;

  • 如果 结束时间 >临时表中已经存在的某一结束时间,更新临时表中对应记录为当前取到的结束时间;

  • 按照以上规则直至所有数据均处理完成,此时临时表中获得的是不重叠的所有工作时间,采用group 即可获得一天是实际工作时间,进而可以求出休息时间。

⑨ SQL语句查询特定时间段的数据怎么写

SQL服务器:

Select*fromtablewhere'2008-7-1'和'2008-12-31'

访问

从表中选择发生日期>#2008-7-1#和发生日期<#2008-12-31#

就是这样:注意,SQLserver中的日期和访问有一点不同。

(9)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指定的订单

⑩ SQL时间段的查询问题!!!!

开始>'开始时间' and 结束<='结束时间'

热点内容
哪个安卓相机和苹果差不多 发布:2024-12-28 16:52:34 浏览:186
eclipse不编译jsp 发布:2024-12-28 16:43:40 浏览:228
word二进制流编译html 发布:2024-12-28 16:39:22 浏览:544
国际服的六级防弹衣什么配置最好 发布:2024-12-28 16:38:34 浏览:552
阿里云服务器保障吗 发布:2024-12-28 16:36:56 浏览:888
小米平板清理存储空间 发布:2024-12-28 16:17:10 浏览:484
金星访问孟非 发布:2024-12-28 16:13:52 浏览:188
存储过程回滚 发布:2024-12-28 16:10:48 浏览:505
社保卡初始密码是什么 发布:2024-12-28 16:02:04 浏览:54
nba2k22手机版哪里下安卓教程 发布:2024-12-28 15:58:41 浏览:177