您好我有一个查询,我想返回一个值。如果我分两部分运行查询并将它们加在一起就可以了,但是当我尝试使用OR运算符时,值会大大增加。
这是第一个查询:
select count (*) from tablename where DATE_TRE='2013-10-06' and SECTOR= '1'
返回3867
这是第二个:
select count (*) from tablename where DATE_TRE='2013-10-06' and SECTOR= '01'
这将返回9
当我使用或像这样
运行它时 select count (*) from tablename where DATE_TRE='2013-10-06' and SECTOR= '1' OR SECTOR = '01'
我得到4066的价值,任何想法我想要3876的数字
答案 0 :(得分:2)
and
比or
强大。使用括号
select count (*)
from tablename
where DATE_TRE = '2013-10-06'
and (SECTOR= '1' OR SECTOR = '01')
或
select count (*)
from tablename
where DATE_TRE = '2013-10-06'
and SECTOR in ('1', '01')
答案 1 :(得分:2)
我认为是因为它像这样评估它
select count (*)
from tablename
where (DATE_TRE='2013-10-06' and SECTOR= '1') OR SECTOR = '01'
当你正在寻找这个(试试这个)
select count (*)
from tablename
where DATE_TRE='2013-10-06' and (SECTOR= '1' OR SECTOR = '01')
答案 2 :(得分:1)
在SECTOR ='1'或SECTOR ='01'上放置一些括号:
select count (*) from tablename where DATE_TRE='2013-10-06'
and ( SECTOR= '1' OR SECTOR = '01')