我有以下两个表dmu
和ter
>>> sqldf('select distinct begin, end from dmu', globals())
begin end
0 56 65
>>> sqldf('select distinct begin, end from ter', globals())
begin end
0 0 4
1 5 9
2 9 12
3 13 17
4 18 26
5 26 27
6 28 31
7 32 35
8 36 37
9 38 44
10 45 52
11 53 55
12 56 65
13 65 66
我想只选择ter.begin
介于dmu.begin - 15
和dmu.begin
即。来自ter
的行将是:
10 45 52
11 53 55
12 56 65
13 65 66
所以我尝试过:
sqldf('select * from dmu
inner join ter
on ter.begin between dmu.begin - 15 and dmu.begin',
globals())
(我从python调用mysql,但这不重要)。
这会返回一个空表!为什么?我可以不在join语句中使用between语句吗?是- 15
部分以某种方式抛弃它?