php 交集查詢

2021-08-20 09:42:44 字數 867 閱讀 8121

mysql: 

// 時間 

$shijiankj = ['開始時間','結束時間'];

$query->where(function($query) use($shijiankj));

// 開始時間大於查詢開始時間

// 結束時間小於查詢結束時間

$query->orwhere(function($query) use($shijiankj));

// 結束時間大於查詢開始時間

// 結束時間小於查詢結束時間

$query->orwhere(function($query) use($shijiankj));

});

function:

/**

* 驗證時間是否有交集,(時間戳大小比較)

** @author eric

* @param $shijiankj 查詢時間

* @param $times 系統時間

* @return int 1,2,3表示有交集

*/public function yan_zheng_shi_fou_you_jiao_ji($shijiankj, $times)

// 系統開始 >= 查詢開始 && 系統開始 <= 查詢結束

if($times[0] >= $shijiankj[0] && $times[0] <= $shijiankj[1])

// 系統結束 >= 查詢開始 && 系統結束 <= 查詢結束

if($times[1] >= $shijiankj[0] && $times[1] <= $shijiankj[1])

return 4;

}

PHP陣列交集的優化

假設我們正在運營乙個手機相關的 使用者可以通過指定若干引數 如作業系統,螢幕解析度,攝像頭畫素等等 來篩選自己想要的手機。不過由於手機的 引數多,且不同的手機其引數差異大,所以參數列結構通常是縱表 乙個引數是一行 而不是橫表 乙個引數是一列 此時使用若干引數來取結果,通常就是把 每個單獨引數來取結果...

ORACLE查詢交集 並集

1 查詢同時擁有某兩個欄位的所有表 select table name from user tab columns where column name 欄位1 大寫 intersect select table name from user tab columns where column name...

php 兩陣列交集 差集

array intersect 計算陣列的交集說明 array array intersect array array1,array array2 array array intersect 返回乙個陣列,該陣列包含了所有在 array1 中也同時出現在所有其它引數陣列中的值。注意鍵名保留不變。例子...