我在表格中有两个列:
numberStart | numberEnd
1001 | 1006
2000 | 2001
numberStart和numberEnd是范围。如果我这样做:
SELECT * FROM range WHERE ('numberStart' >= '1001' OR 'numberEnd' <= '1001');
它返回所有记录,但是我应该这样做:
SELECT * FROM range WHERE ('numberStart' = '1001' OR 'numberEnd' = '1001');
答案 0 :(得分:0)
小心你的报价。单引号用于字符串文字。 'numberStart'
是一个字符串,而不是一列。 DBMS将'n'
的{{1}}与'numberStart'
的{{1}}进行比较,以比较两者。
显然'1'
是一列,所以不要使用引号。 1001是一个数字,所以不要使用引号。
'1001'