我想在与以下任何 sets 条件匹配的表上运行查询:
SELECT
id,
time
FROM
TABLE
WHERE
<condition1 is True> OR,
<condition2 is True> OR,
<condition3 is True> OR,
...
每种情况可能看起来像:
id = 'id1' AND t > 20 AND t < 40
每个WHERE
条件(上面的id
,20
,40
)中的值都是熊猫数据框中的行-长2万行。我看到两个在技术上可行的选项:
我的问题:实现此目标的惯用/高效方法是什么? 我怀疑以上两种都不是合适的方法,这个问题在Google上有点难。
答案 0 :(得分:0)
我认为最好创建一个具有列id,t1和t2的临时表,并将其中的2万行放入其中。然后只需加入此临时表:
SELECT DISTINCT TABLE.id, time
FROM TABLE
JOIN TEMP_TABLE T2 ON
TABLE.ID = T2.ID AND TABLE.T > T1 AND TABLE.T < T2;