MySQL之逻辑操作符 and or not xor 成对比较

and or not xor
**and:**逻辑与操作,表示两个条件都满足时才会返回结果
**or:**逻辑或,表示其中任意一个条件满足则返回结果
**not:**当不满足条件时才会返回结果
xor:当其中一个条件为真,另一个条件为假时才会返回结果
可以使用括号改变逻辑操作的优先级
例16: 得到1970年之后出生的每个男球员的编号、名字、性别和出生日期
SELECT playerno, name, sex, birth_date
FROM players
WHERE birth_date > ‘1970-12-31’
AND sex = ‘M’;
在这里插入图片描述
例17: 得到住在Plymouth或者Eltham的球员的编号、姓名和居住城市
SELECT playerno, name, town
FROM players
WHERE town = ‘Plymouth’
OR town = ‘Eltham’;
在这里插入图片描述
用在一个条件的前面。经常和其它操作符一起使用。例如:not in、not between 、not like、is not null
例18: 得到那些未住在Stratford的球员的编号、姓名
SELECT playerno, name
FROM players
WHERE NOT (town = ‘Stratford’);
例19:查找罚款金额不是25美元或者50美元的球员的编号
SELECT playerno
FROM penalties
WHERE amount NOT IN (25,50);
在这里插入图片描述
例21: 得到那些住在Stratford或者出生于1963年的球员的编号、姓名、出生日期,但是不包括那些住在Stratford并且出生于1963年的球员
SELECT playerno, name, birth_date
FROM players
WHERE (town = ‘Stratford’ )
XOR (year(birth_date)=‘1963’);
在这里插入图片描述
成对比较:
例4:找出获胜局数等于2并且输掉局数等于3的比赛的编号
SELECT matchno
FROM matches
WHERE (won,lost) = (2,3);
MySQL在内部把条件重写为(won=2) and (lost=3)
where (id,num)=(1,2),当比较操作符不是等号时,MySQL解析规则会 发生改变(例如:条件(2,4)>(1,3)并不等于(2>1) and (4>3),而是等于(2>1) or (2=1 and 4>3))。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值