实现查询时差在五分钟以内的数据 (sql)
方案大致三种,核心的原理都一样 都是逐行比对
第一种:使用游标实现
第二种:写一个存储过程 ,存储过程中实现 逐行比对逻辑
第三种:在代码中进行逐行比对逻辑(推荐,数据库对服务器的性能影响最小)
·
create table #tempTable
(id int,
dateS datetime
)
declare @id int
declare @date varchar(50)
declare cursor1 cursor for --定义游标cursor1
select BlogLogId,CreationTime from Tb_BlogLog --使用游标的对象(跟据需要填入select文)
open cursor1 --打开游标
fetch next from cursor1 into @id,@date --将游标向下移行,获取的数据放入之前定义的变量@id,@@date中
while @@fetch_status=0 --判断是否成功获取数据
begin
--临时表
declare @temp int;
select @temp=COUNT(*) from Tb_BlogLog
where BlogLogId!=@id --自己除外的分钟之内有多少条数据
and
DATEDIFF(Minute, CreationTime,@date)<=5
and
DATEDIFF(Minute, CreationTime,@date)>=-5
if(@temp>0)
begin
insert into #tempTable(id,dateS) values(@id,@date);
end
fetch next from cursor1 into @id,@date --将游标向下移行
end
close cursor1; --关闭游标
deallocate cursor1;
select * from #tempTable; --最后查询临时表得出结果
实现查询时差在五分钟以内的数据 (sql)相关推荐
- SQL 查询时间相差15分钟以内的数据
SELECT ...,... FROM 表名 WHERE ( 字段时间2 BETWEEN ADD_SECONDS(TO_TIMESTAMP (字段时间1),-15*60) AND ADD_SECO ...
- MySQL 当前时间30分钟以内的数据
MySQL 当前时间30分钟以内的数据 SELECT * FROM toa_machine_restart t WHERE t.END_DATE IS NOT NULL AND t.END_DATE& ...
- mysql 查询当前时间一个月以内的数据
在项目开发过程中,需要定期维护结束一个月以内的数据,下面介绍查询方式. SELECT id,title,endtime from classroom where years = 2022 and da ...
- hive load data inpath 空目录_Hive内部表 | 每日五分钟学大数据
上一篇说的是外部表,当把EXTERNAL关键字去掉的时候就是内部表了.为什么叫内部表,因为这种表,Hive会(或多或少地)控制着数据的生命周期. 如果你熟悉Hive那你一定知道,Hive默认情况下会将 ...
- 字段 新增hive_Hive分区表 | 每日五分钟学大数据
数据分区的一般概念存在已久.其可以有多种形式,但是通常使用分区来水平分散压力,将数据从物理上转移到和使用最频繁的用户更近的地方,以及实现其他目的. Hive中有分区表的概念.我们可以看到分区表具有重要 ...
- 【mysql基础知识】查询当前时间之前5分钟内的数据
通过sql语句查询与当前时间相隔5分钟以内的数据. select * from 数据表名 where 字段名 between date_add(now(), interval - 5 minute) ...
- 【小程序制作经验分享】怎么在五分钟内做出查询天气快递/星座运势/天天鸡汤等的小程序?(不是用模板)
✨API是什么? 应用程序接口(英语:Application Programming Interface,缩写API),是软件系统不同组成部分衔接的约定. 为了实现更多的功能,Zion 为用户提供了& ...
- 关于 I/O 的五分钟法则
关于 I/O 的五分钟法则(Five-Minute Rule) 1987年,Jim Gray和Gianfranco Putzolu推出了著名的5分钟法则[Gray 1987],他们通过内存,硬盘的性能 ...
- I/O 的五分钟法则(Five-Minute Rule)
1987年,Jim Gray和Gianfranco Putzolu推出了著名的5分钟法则[Gray 1987],他们通过内存,硬盘的性能以及当时的成本,给出了这样的公式:BreakEvenInterv ...
最新文章
- 使用java导入某个msn帐号的好友列表并发送消息
- Python Django模板templates渲染及配置
- 打造最舒适的webview调试环境
- cpickle支持的python版本_Python序列化模块pickle和cPickle
- php+使用go编译,golang如何编译
- 在ASP.NET 中实现单用户登录(利用Cache, 将用户信息保存在服务器缓存中)[转]
- 阿里十大最受开发者欢迎的工具!
- 版本帝Java 12 / JDK 12 正式发布,八大重大更新及部分代码示例
- java仓库管理设计报告_基于javaweb的仓库管理系统的设计和实现 毕业论文
- 百度竞价推广地域是如何选择的?
- 生活数字化 小故事告诉你什么是大数据
- 二进制#逻辑计算#与(∧)、或(∨)、非(¬)、异或(⨁)#与,或,非,异或的运算法则#与,或,非,异或运算的基础代码
- 网页脚本编程学习笔记
- (八)Colaboratory在谷歌云盘的使用
- 一键GHOST优盘版安装XP/win7系统
- re修改gpu频率_简单方便的超频软件,华硕GPU Tweak使用教程
- 区块链开发(十五)以太坊中的Events和Logs解析及用途
- 2018年华为实习生招聘三道编程题
- 【GoCN酷Go推荐】网络流量抓包库 gopacket介绍
- linux rm r是什么格式,linux rm 命令作用哪些使用教程