AND 和 OR
没错,这章还是讲数据过滤的,同样是where子句,讲如何使用NOT 和 IN操作符。
一般来说,单一的过滤条件是不能满足日常开发的,mysql支持多条件过滤,也就是使用多个where子句,中间用AND或者OR来隔开。AND表示“同时满足”,OR表示“满足其中之一即可”。
比如说:查找满足条件A和B 或者 条件C的数据。
where (条件A AND 条件B) OR 条件C
可以使用小括号来让AND操作优先,这样逻辑清晰消除歧义,且代码易读。
IN
IN操作符用来指定条件范围,where first_name in ('mary', 'linda')
image.png
在多表查询中,in 后面也可以放另一个select查询,但是这两个表一定得是关联表,不然没有外键怎么查询呢。
书上还总结了使用IN操作符的优势:
- 语法清楚,直观。
- 使用更少的操作符,计算次序更容易管理,尤其是在复杂的sql中。
- IN操作符比OR操作符执行的更快
- IN最大的优势是可以包含其他的SELECT语句,可以动态的建立WHERE子句。
NOT
NOT操作符只有一个功能,就是否定它之后所跟的任何条件。比如:
image.png
第7章,搞定。
网友评论