当前位置: 首页 > news >正文

校验数据是否重叠(各种操作符>,<,>=,<=,or,and)

最近接到一个需求,其中部分功能涉及到数据的重叠校验,并且录入的数据需要包含各种操作符。如果只通过java代码来查询并进行循环判断的话,判断情况会很复杂,幸好有同事的帮忙提供了一个用sql查询重叠部分的方法,现在分享一下供大家参考

 1.首先先具体介绍一下需求,主要是根据开始时间和结束时间来查询 相同时间段内是否有期限重叠的数据,如果有重叠则不让添加。也就是时间段和期限都重叠的数据不允许添加。

SELECT* 
FROM(SELECTLV FROM( SELECT LEVEL LV FROM DUAL CONNECT BY 100 >= LEVEL ) C1 WHEREC1.LV > 12 AND c1.lv <> 36 ) CJOIN (SELECT12 AS A,1 AS AA,--1 > 2>= 3< 4 <= 5 <>24 AS B,3 AS BB,--1 > 2>= 3< 4 <= 5 <>1 AS C,-- 1 and 2 orDATE '2021-01-01' AS STARTDATE,DATE '2022-01-01' AS ENDDATE FROMDUAL UNIONSELECT12 AS A,1 AS AA,--1 > 2>= 3< 4 <= 5 <>36 AS B,3 AS BB,--1 > 2>= 3< 4 <= 5 <>1 AS C,DATE '2022-01-01' AS STARTDATE,DATE '2023-01-01' AS ENDDATE FROMDUAL ) D ON (D.C = 1 AND ((( D.AA = 1 AND LV > D.A ) OR ( D.AA = 2 AND LV >= D.A ) OR ( D.AA = 3 AND LV < D.A ) OR ( D.AA = 4 AND LV <= D.A ) OR ( D.AA = 5 AND LV <> D.A ) ) AND (( D.BB = 1 AND LV > D.B ) OR ( D.BB = 2 AND LV >= D.B ) OR ( D.BB = 3 AND LV < D.B ) OR ( D.BB = 4 AND LV <= D.B ) OR ( D.BB = 5 AND LV <> D.B ) ) ) ) OR ((D.C = 2 AND ((( D.AA = 1 AND LV > D.A ) OR ( D.AA = 2 AND LV >= D.A ) OR ( D.AA = 3 AND LV < D.A ) OR ( D.AA = 4 AND LV <= D.A ) OR ( D.AA = 5 AND LV <> D.A ) ) OR (( D.BB = 1 AND LV > D.B ) OR ( D.BB = 2 AND LV >= D.B ) OR ( D.BB = 3 AND LV < D.B ) OR ( D.BB = 4 AND LV <= D.B ) OR ( D.BB = 5 AND LV <> D.B ) ) ) ) )

其中 SELECT LEVEL LV FROM DUAL CONNECT BY 100 >= LEVEL 是用来限定期限的数据,根据自己的具体情况来确认数据范围。我这里用100就足够了,其中的条件就是我们录入的数据。join的数据是从数据库中查询出来的数据,如果查询结果有数据,则证明有重复,否则没有重复。

相关文章:

校验数据是否重叠(各种操作符>,<,>=,<=,or,and)

最近接到一个需求&#xff0c;其中部分功能涉及到数据的重叠校验&#xff0c;并且录入的数据需要包含各种操作符。如果只通过java代码来查询并进行循环判断的话&#xff0c;判断情况会很复杂&#xff0c;幸好有同事的帮忙提供了一个用sql查询重叠部分的方法&#xff0c;现在分享…...

大一C语言作业 12.8

1.C 对一维数组初始化时&#xff0c;如果全部元素都赋了初值&#xff0c;可以省略数组长度。 这里没有指定数组长度&#xff0c;编译器会根据初始化列表的元素个数来确定数组长度。 2.C 在C语言中&#xff0c;字符数组是不能用赋值运算符直接赋值的。 3.C 在二维数组a中&#x…...

ELasticsearch:什么是语义搜索?

语义搜索定义 语义搜索是一种解释单词和短语含义的搜索引擎技术。 语义搜索的结果将返回与查询含义匹配的内容&#xff0c;而不是与查询中的单词字面匹配的内容。 语义搜索是一组搜索引擎功能&#xff0c;其中包括根据搜索者的意图及其搜索上下文理解单词。 此类搜索旨在通过…...

ooTD I 女儿是自己的,尽情打扮尽情可爱

分享女宝的时尚穿搭 奶乎乎的黄色也太好看了 超足充绒量&#xff0b;优质面料 柔软蓬松上身体验感超赞 怎么穿都好看系列 轻轻松松打造时尚造型&#xff01;&#xff01;...

第62天:django学习(十一)

cookie和session 发展史 一开始,只有一个页面&#xff0c;没有登录功能&#xff0c;大家看到东西都一样。 时代发展&#xff0c;出现了需要登录注册的网站&#xff0c;要有一门技术存储我们的登录信息&#xff0c;于是cookie诞生了。 cookie: - 存储形式&#xff1a;k:v键值对…...

Rust测试字符串的移动,Move

代码创建了一个结构体&#xff0c;结构体有test1 字符串&#xff0c;还有指向字符串的指针。一共创建了两个。 然后我们使用swap 函数 交换两个结构体内存的内容。 最后如上图。相同的地址&#xff0c;变成了另外结构体的内容。注意看指针部分&#xff0c;还是指向原来的地址…...

vue+electron问题汇总

1. Vue_Bug Failed to fetch extension, trying 4 more times 描述&#xff1a;项目启动时报错 解决&#xff1a;注释图片中内容 2. Module not found: Error: Can’t resolve ‘fs’ in 描述&#xff1a;项目启动报错 解决&#xff1a;vue.config.js中添加图中数据 3.导入…...

Linux中的网络时间服务器

本章主要介绍网络时间的服务器 使用chrony配置时间服务器配置chrony客户端服务器同步时间 1.1 时间同步的重要性 一些服务对时间要求非常严格&#xff0c;例如如图所示的由三台服务器搭建的ceph集群 这三台服务器的时间必须保持一致&#xff0c;如果不一致&#xff0c;就会显…...

fastadmin打印页面

如下图选中订单号进行打印 html中增加代码 <div id"toolbar" class"toolbar"><a href"javascript:;" class"btn btn-primary btn-refresh" title"{:__(Refresh)}" ><i class"fa fa-refresh">&l…...

Java 将word转为PDF的三种方式和处理在服务器上下载后乱码的格式

我这边是因为业务需要将之前导出的word文档转换为PDF文件&#xff0c;然后页面预览下载这样的情况。之前导出word文档又不是我做的&#xff0c;所以为了不影响业务&#xff0c;只是将最后在输出流时转换成了PDF&#xff0c;当时本地调用没什么问题&#xff0c;一切正常&#xf…...

C\C++ 获取最值

C C 语言的不同类型的最值可以在 limits.h 头文件里找到定义 #include <limits.h>int main() {printf("%d", INT_MAX); // 整数最大值printf("%d", INT_MIN); // 整数最小值 } C C 有模板&#xff0c;可以通过替换下面的 int 和 double&#xff…...

机器学习之无监督学习:九大聚类算法

今天&#xff0c;和大家分享一下机器学习之无监督学习中的常见的聚类方法。 今天&#xff0c;和大家分享一下机器学习之无监督学习中的常见的聚类方法。 在无监督学习中&#xff0c;我们的数据并不带有任何标签&#xff0c;因此在无监督学习中要做的就是将这一系列无标签的数…...

Linux高级管理-搭建网站服务

在Ihternet 网络环境中&#xff0c;Web 服务无疑是最为流行的应用系统。有了Web站点&#xff0c;企业可以充分 展示自己的产品&#xff0c;宣传企业形象。Web站点还为企业提供了与客户交流、电子商务交易平台等丰富 的网络应用。部署与维护Web 服务是运维工程师必须掌握的一个技…...

Windows 系统,TortoiseSVN 无法修改 Log 信息解决方法

使用SVN提交版本信息时&#xff0c;注释内容写的不全。通过右键TortoiseSVN的Show log看到提交的的注释&#xff0c;右键看到Edit log message的选项&#xff0c;然而提交后却给出错误提示&#xff1a; Repository has not been enabled to accept revision propchanges; ask …...

编译 Android gradle-4.6-all.zip 报错问题记录

编译 Android gradle-4.6-all.zip 报错问题记录 方法一&#xff1a;替换资源&#xff1a;方法二&#xff1a;修改源方法三&#xff1a;修改版本 编译时候无法下载 gradle-4.6-all Downloading https://services.gradle.org/distributions/gradle-4.6-all.zip 方法一&#xf…...

Linux系统调试课:Valgrind 内存调试

文章目录 一、为什么要学会Valgrind二、什么是内存泄露三、Valgrind的移植四、Valgrind相关参数沉淀、分享、成长,让自己和他人都能有所收获!😄 📢Valgrind 是一个开源的内存调试和性能分析工具,用于帮助开发者找出程序中的内存错误,如内存泄漏、使用未初始化的内存、非…...

python主流开发工具排名,python开发工具有哪些

本篇文章给大家谈谈python的开发工具软件有哪些&#xff0c;以及python主流开发工具排名&#xff0c;希望对各位有所帮助&#xff0c;不要忘了收藏本站喔。 python中用到哪些软件 一、Python代码编辑器1、sublime Textsublime Text是一款非常流行的代码编辑器&#xff0c;支持P…...

Spring Boot Async:从入门到精通,原理详解与最佳实践

Spring Boot 的异步功能&#xff08;Async&#xff09;允许我们将某些任务异步执行&#xff0c;而不会阻塞主线程。这对于处理耗时的操作非常有用&#xff0c;如发送电子邮件、生成报表、调用外部 API 等。通过异步处理&#xff0c;我们可以释放主线程&#xff0c;让它继续处理…...

oracle 19c创建db_link名称带.com域名问题处理

文章目录 一、修改PDB的global_name二、重启数据库实例三、修改domain后重试 一、修改PDB的global_name SYSorcl1>sho pdbsCON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ----------2 PDB$SEED …...

银行卡二要素API的应用案例:从在线购物到金融投资

引言 随着互联网技术的不断发展&#xff0c;人们的金融需求也在不断增加。随之而来的是各种新型金融服务的涌现&#xff0c;让用户的金融体验更加便利快捷。其中&#xff0c;银行卡二要素API的应用&#xff0c;则为用户的金融体验和安全性提供了极大的保障。 银行卡二要素API…...

告别内存泄漏!Cocos Creator 2.4+ AssetManager资源释放的完整避坑指南

Cocos Creator 2.4 AssetManager资源释放的完整避坑指南在游戏开发中&#xff0c;资源管理一直是影响性能和稳定性的关键因素。随着Cocos Creator 2.4版本推出全新的AssetManager系统&#xff0c;开发者获得了更强大的资源管理能力&#xff0c;但也面临着新的挑战。本文将深入探…...

Unity动画状态机实战:用Animator Controller实现角色平滑切换攻击动作(附避坑指南)

Unity动画状态机实战&#xff1a;用Animator Controller实现角色平滑切换攻击动作&#xff08;附避坑指南&#xff09;在动作类游戏开发中&#xff0c;角色攻击动作的流畅切换是提升战斗体验的关键。许多开发者在使用Unity的Animator Controller时&#xff0c;常常遇到动作卡顿…...

张量网络MPS/MPO求解粘性Burgers方程:突破CFD维度灾难的量子启发方法

1. 项目概述&#xff1a;当张量网络遇上流体方程在计算流体力学&#xff08;CFD&#xff09;领域&#xff0c;我们每天都在和维度灾难作斗争。想象一下&#xff0c;你要模拟一个三维湍流场&#xff0c;每个空间方向离散成100个点&#xff0c;时间再取100步&#xff0c;那么整个…...

3分钟快速修复洛雪音乐播放问题:六音音源完整指南

3分钟快速修复洛雪音乐播放问题&#xff1a;六音音源完整指南 【免费下载链接】New_lxmusic_source 六音音源修复版 项目地址: https://gitcode.com/gh_mirrors/ne/New_lxmusic_source 你是否曾经在升级洛雪音乐后&#xff0c;发现心爱的歌单突然变成了灰色&#xff0c;…...

全局退火算法:用神经网络驱动蒙特卡洛,突破组合优化瓶颈

1. 全局退火算法&#xff1a;为什么我们需要一种新的优化范式&#xff1f;在组合优化和统计物理领域&#xff0c;我们经常面对一个看似简单、实则令人头疼的核心问题&#xff1a;如何在一个由无数个可能状态构成的、崎岖不平的“能量景观”中找到那个最低的谷底——也就是全局最…...

Apache Fesod:Java开发者处理海量Excel数据的终极解决方案

Apache Fesod&#xff1a;Java开发者处理海量Excel数据的终极解决方案 【免费下载链接】fesod Fast. Easy. Done. Processing spreadsheets without worrying about large files causing OOM. 项目地址: https://gitcode.com/gh_mirrors/fast/fesod 在处理海量Excel数据…...

显示what failed:VMMR0.r0--已解决

VirtualBox版本5.2.44 win11家庭中文版 以下是已经尝试内核隔离无用的情况下&#xff0c;所写出的解决方案。 winR&#xff0c;输入services.msc 禁用该服务后 管理员身份打开cmd&#xff0c;输入bcdedit /set hypervisorlaunchtype off 重启后确认查看方式 ①管理员身…...

Houdini刚体破碎VAT导出到UE5:从静态碎片到动态 Niagara 粒子群的实战转换

Houdini刚体破碎VAT导出到UE5&#xff1a;从静态碎片到动态 Niagara 粒子群的实战转换在影视级实时特效制作中&#xff0c;大规模刚体破碎效果一直是个技术难点。传统方法需要消耗大量计算资源来处理每个碎片的物理模拟&#xff0c;而Vertex Animation Texture&#xff08;VAT&…...

FinML-Chain:融合链上链下数据,构建可信金融机器学习数据集

1. 项目概述&#xff1a;当区块链数据遇见机器学习 在金融科技这个日新月异的领域&#xff0c;我们每天都在和数据打交道。无论是高频交易、风险评估还是市场预测&#xff0c;机器学习模型早已成为我们手中不可或缺的“利器”。但干这行久了&#xff0c;你一定会遇到一个绕不开…...

未来趋势洞察:后端开发技术的前沿动态与发展方向

在数字化浪潮席卷全球的今天&#xff0c;后端开发作为支撑各类应用的核心力量&#xff0c;正经历着前所未有的变革。随着云计算、人工智能、物联网等新兴技术的迅猛发展&#xff0c;后端开发技术也在不断演进&#xff0c;呈现出一系列新的趋势和方向。本文将深入探讨未来后端开…...