php搜索间隔,php – 如何查找超过2个用户的匹配时间间隔
要查找user1和user2都是免費(fèi)的,請(qǐng)嘗試以下操作:
select
a.datetime_start as user1start,a.datetime_end as user1end,b.datetime_start as user2start,b.datetime_end as user2end,case when a.datetime_start > b.datetime_start then a.datetime_start
else b.datetime_start end as avail_start,case when a.datetime_end>b.datetime_end then b.datetime_end
else a.datetime_end end as avail_end
from users a inner join users b on
a.datetime_start<=b.datetime_end and a.datetime_end>=b.datetime_start
and a.userid={user1} and b.userid={user2}
編輯:
要比較超過(guò)2個(gè)用戶,請(qǐng)嘗試以下內(nèi)容:
select max(datetime_start) as avail_start,min(datetime_end) as avail_end
from(
select *,@rn := CASE WHEN @prev_start <=datetime_end and @prev_end >=datetime_start THEN @rn ELSE @rn+1 END AS rn,@prev_start := datetime_start,@prev_end := datetime_end
from(
select * from users2 m
where exists ( select null
from users2 o
where o.datetime_start <= m.datetime_end and o.datetime_end >= m.datetime_start
and o.id
需要根據(jù)用戶數(shù)更改(2,5)中的m.userid并使count(rn)= 4.
總結(jié)
以上是生活随笔為你收集整理的php搜索间隔,php – 如何查找超过2个用户的匹配时间间隔的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python中反斜杠_Python中的正
- 下一篇: ccxprocess启动项可以禁用么_M