【发布时间】:2018-07-22 04:47:08
【问题描述】:
我有两张表:一张是计划泄漏补丁表,另一张是泄漏补丁实现表。如下:
第二个表有更多的列(这里省略)。这里的情况是我可以使用 SQL 表达式连接这两个表,如下所示:
SELECT
PLAN.PIPE_ID,
PLAN.INTERVAL_START,
PLAN.INTERVAL_END,
REAL.REAL_START,
REAL.REAL_END,
...
FROM PLAN, REAL
WHERE
PLAN.PIPE_ID=REAL.PIPE_ID
REAL_START<INTERVAL_END AND
REAL_END>INTERVAL_START AND
((REAL_START>=INTERVAL_START AND REAL_END<=INTERVAL_END) OR --CASE 1
(REAL_START>=INTERVAL_START AND REAL_START>INTERVAL_END) OR --CASE 2
(REAL_START<INTERVAL_START AND REAL_START<=INTERVAL_END) OR --CASE 3
(REAL_START<INTERVAL_START AND REAL_START>INTERVAL_END)) --CASE 4
其中条件的情况满足下面的描述,并确保显示的数据只有两个表之间的间隔有交集。
如果我要使用 Pandas 进行相同的连接。怎么做?我是 pandas 的新手,我了解到 Pandas 加入使用密钥。
在此先感谢
【问题讨论】:
标签: python sql pandas dataframe join