分享

【sql in excel】入门17:补漏(and、or)

 L罗乐 2017-12-05



1、求金额小于等于200或金额大于等于500的数据。


select * from [Sheet1$] where 金额<=200 or 金额>=500

结果:

上面的sql语句不能写为:



select * from [Sheet1$] where 金额<=200 or 金额>=500

结果:没有数据

虽然and可以配合where使用多个条件,但对于同一个字段的,要分清楚条件的关系。

将上述语句改为:

select * from [Sheet1$] where 金额>=200 and 金额<=500

结果:

上述sql语句写为:

select * from [Sheet1$] where 金额>=200 or 金额<=500

结果:


or连接的条件,只要有一个true,就能返回结果。而and则需要每个条件都满足。


下面的sql语句将返回没有结果:

select * from [Sheet1$] where 姓名='A' and 姓名='B'

如改为:

select * from [Sheet1$] where 姓名='A' or 姓名='B'

结果:



and or结合使用。

sql语句:

select * from [Sheet1$]   where 姓名='A'    and   金额<=200   or   金额 >=500

结果:


这样看sql语句,或许有困惑。改写为下面的格式:

select * from [Sheet1$]

 where 姓名='A'  

and 

(金额<=200)

 or 

(金额 >=500)

这个语句分为两个条件,

第一个条件为蓝色语句,姓名A,且金额<=200,运行语句

select * from [Sheet1$]

 where 姓名='A'  

and 

(金额<=200)

结果为:


第二个条件为红色语句,金额>=500的数据,运行语句

select * from [Sheet1$] where (金额 >=500)

结果为:

两者结合在一起,得出第一次的结果:



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多