Mysql 如何查詢時(shí)間段交集
Mysql 查詢時(shí)間段交集
使用場景
數(shù)據(jù)庫表有兩個(gè)字段starttime,endtime?,F(xiàn)在給出(a,b)的時(shí)間段,查出和(starttime,endtime)時(shí)間段有交集的數(shù)據(jù)。
sql
select * from TABLENAME where
(starttime > a AND starttime < b) OR
(starttime < a AND endtime > b) OR
(endtime > a AND endtime < b) OR
(starttime = a AND endtime = b);
Mysql 查詢兩個(gè)時(shí)間段是否有交集的情況
數(shù)據(jù)庫的字段 start_time, end_time
輸入的字段 a,b
第一種
SELECT * FROM test_table
WHERE
(start_time >= a AND start_time <= b)
OR (start_time <= a AND end_time >= b)
OR (end_time >= a AND end_time <= b)
第二種
SELECT * FROM test_table
WHERE
NOT (
(end_time < a
OR (start_time > b)
)
兩種結(jié)果相同。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MyEclipse連接MySQL數(shù)據(jù)庫報(bào)錯(cuò)解決辦法
我們現(xiàn)在一般網(wǎng)站都是利用的MySQL數(shù)據(jù)庫搭建網(wǎng)站的,但是在網(wǎng)上看到很多網(wǎng)友吐槽數(shù)據(jù)庫連接不上的問題,現(xiàn)在我就結(jié)合相關(guān)資料向提出一些我個(gè)人的見解,希望對大家解決問題有幫助2014-01-01
MySQL中CREATE DATABASE語句創(chuàng)建數(shù)據(jù)庫的示例
在MySQL中,可以使用CREATE DATABASE語句創(chuàng)建數(shù)據(jù)庫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-09-09
MySQL索引背后的數(shù)據(jù)結(jié)構(gòu)及算法原理詳解
本文以MySQL數(shù)據(jù)庫為研究對象,討論與數(shù)據(jù)庫索引相關(guān)的一些話題。特別需要說明的是,MySQL支持諸多存儲(chǔ)引擎,而各種存儲(chǔ)引擎對索引的支持也各不相同,因此MySQL數(shù)據(jù)庫支持多種索引類型,如BTree索引,哈希索引,全文索引等等2016-12-12
MySQL不使用order by實(shí)現(xiàn)排名的三種思路總結(jié)
ORDER BY語句用于根據(jù)指定的列對結(jié)果集進(jìn)行排序,在日常開發(fā)中也經(jīng)常會(huì)用到,但下面這篇文章主要給大家介紹了關(guān)于MySQL不使用order by實(shí)現(xiàn)排名的三種思路,需要的朋友可以參考下2021-06-06
MySQL高效模糊搜索之內(nèi)置函數(shù)locate instr position find_in_set使用詳解
在MySQL中一般進(jìn)行模糊搜索都是使用LIKE配合通配符進(jìn)行查詢的,在性能上一定的影響,下面給大家分享MYSQL自帶的內(nèi)置模糊搜索函數(shù),除最后一個(gè)外其它三個(gè)性能上要比Like快些2018-09-09
linux下 root 登錄 MySQL 報(bào)錯(cuò)的問題
本文給大家記錄的是個(gè)人在linux下使用root用戶登錄mysql的時(shí)候遇到的一個(gè)錯(cuò)誤的解決方法,非常的簡單實(shí)用,有需要的小伙伴可以參考下。2016-02-02

