首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

or与in的查询结果如何不同

2011-12-31 
or与in的查询结果怎么不同?SELECTUnitCode,FieldCode,DataValueFROMDX_F2_DataWHERE统计管理部门in( 31151

or与in的查询结果怎么不同?
SELECT   UnitCode,FieldCode,DataValue    
FROM   DX_F2_Data  
WHERE   统计管理部门   in   ( '311513115001 ',   '311513115002 '   , '311513115003 '   )
AND   FieldCode   in( 'C012 ')  
AND   DataTime= '200703 '

SELECT   UnitCode,FieldCode,DataValue,统计管理部门  
FROM   DX_F2_Data  
WHERE   统计管理部门= '311513115001 '   OR   统计管理部门= '311513115002 '   OR   统计管理部门= '311513115003 '  
AND   FieldCode   in   ( 'C012 ')  
AND   DataTime= '200703 '

这两句sql语句查询结果怎么不同啊?
好像第一句把FieldCode不等于C012的也查询出来了!

[解决办法]
--改改

SELECT UnitCode,FieldCode,DataValue
FROM DX_F2_Data
WHERE 统计管理部门 in ( '311513115001 ', '311513115002 ' , '311513115003 ' )
AND FieldCode in( 'C012 ')
AND DataTime= '200703 '

SELECT UnitCode,FieldCode,DataValue,统计管理部门
FROM DX_F2_Data
WHERE (统计管理部门= '311513115001 ' OR 统计管理部门= '311513115002 ' OR 统计管理部门= '311513115003 ' )
AND FieldCode in ( 'C012 ')
AND DataTime= '200703 '

[解决办法]
-->


SELECT UnitCode,FieldCode,DataValue,统计管理部门
FROM DX_F2_Data
WHERE (统计管理部门= '311513115001 '
OR 统计管理部门= '311513115002 '
OR 统计管理部门= '311513115003 ' )
AND FieldCode in ( 'C012 ')
AND DataTime= '200703 '
[解决办法]
只能接点分~~
[解决办法]
相信楼主已经明白了,接分
[解决办法]
and的优先级比or高

热点排行