我有两个表,table1
和table2
,具有相同的结构。列是R
, a
, b
, c
, d
; a
, b
, c
,d
是INT
s 和R
是VARCHAR
.
我需要所有R
的 s 其中和的总和小于 40 并且对于, 和a
是table1
相同的。table2
b
c
d
我执行的语句是:
SELECT table1.R FROM table1,table2 where
table1.a + table2.a <40 or
table1.b + table2.b <40 or
table1.c + table2.c <40 or
table1.d + table2.d <40;
但它给出了意想不到的结果。返回的行数远远大于两个表的记录数之和。
table1 table2
R a b c d R a b c d
i1 45 28 29 22 i1 8 20 13 8
i2 28 28 29 30 i2 12 12 16 20
i2 28 28 10 30 i2 12 12 16 20
i2 28 5 29 30 i2 12 12 16 20
i2 28 28 10 30 i2 12 12 16 20
i2 28 28 29 30 i2 15 15 10 12
i2 10 12 15 20 i2 8 3 6 12
expected results
i1
because table1.d+table2.d <40 for R = i1