我对 SQL 有非常基本的了解,但是为了处理大量数据,我需要使用它。这是我的问题:
我有两张表,如下:
table1:
id begin end
100 1998 2013
101 1996 2009
table2:
id date price qtt
100 1996 10 200
100 1999 12 200
101 1997 13 100
101 2013 14 100
我需要做的是擦除date
小于begin
字段或date
大于end
每个 id 的行。这意味着对于id
101,任何记录的日期都不应在 1996 年之前或 2009 年之后。
所以我的预期结果是:
id date price qtt
100 1999 12 200
101 1997 13 100
效率是一个问题,因为我正在为具有数百万条记录的表执行此操作。我已经为这些表准备了一个 sqlfiddle,这样对你来说更容易。
http://sqlfiddle.com/#!2/66f54f/1
如果这个问题太简单了,我很抱歉,但是在搜索了三个小时后,我自己无法解决。先感谢您!