[請益] 看似簡單 但不知怎麼寫較有效率?
我的問題是這樣的
我有兩個table如下
table1: table2:
no. start_1 end_1 name start_2 end_2
1 3 5 A 1 6
2 4 6 B 7 10
3 11 13 C 11 15
4 12 14
規則是 table1 的start跟end 會落在table2的其中一個start跟end之間
我要找出 table2中 完全沒有table1資料落進去的name
呃 有點繞口
我以這兩個table為例 table1中的no.1 start跟end分別為(3, 5)
(3, 5)會落在 table2中的 A (1, 6)裡面 所以A就不是我要找的啦~
同理可得到 table1的data會落入到table2中的A跟C
所以只有"B"是我要的結果
依我目前初學者的作法 我是先找出A跟C
然後再用全部扣掉A、C 得到B這個答案
而我目前實際的問題是
table1約有「3000萬」筆的資料 table2約有25000筆資料
在table2 大約會有 1000筆是不會包含table1中的任何資料的
若按照我的邏輯去寫 一定會跑很久
所以我想問 是否有比較直接的寫法 可以找出那大約1000筆的資料?
或者是有比較快速的寫法? 可以用哪些語法?
還請各位指點 感謝大家 ^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.24.165
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 3 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章