快乐SQL复习 - WHERE条件查询和DISTINCT关键字

上次我们说到了SELECT…FROM…语句,这次我们来说说条件查询~

条件查询的意思就是筛选出你select出来的数据的部分数据,假设一个消费者数据库有100万个id,而我只想看广东地区的消费者数据,那么我就要用到SELECT查询的 WHERE 子句,用来描述我的筛选,通过我们描写的condition,限定这些行的属性满足某些具体条件。

WHERE子句的语法如下:

SELECT column, another_column,

FROM table

WHERE condition

AND/OR another_condition

AND/OR

WHERE语句有很多关键字,可以用来辅助我们查询:

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

这样说小伙伴可能看不太清楚,我们直接举栗子说明~

这是一个消费者的表,表名为:consumer

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

我想要筛选出广东地区的消费者的名字和商品id,该怎么做呢?

首先,因为我们最后输出的结果希望是名字和商品id,那我们的SELECT后面应该跟着name,product_id。

然后我们的where语句后面的condition就应该是:region = “广东”

完整答案:

SELECT name,product_id 

FROM consumer

WHERE region = “广东”

输出结果:

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

接下来,我想要筛选出 id 为 1-3 的消费者的所有详细消息,该怎么做呢?

我们可以用到前面说的BETWEEN…AND…关键字,也可用到小于号

方法1:

SELECT *

FROM consumer

WHERE id BETWEEN 1 AND 3

方法2:

SELECT *

FROM consumer

WHERE id < 4

输出结果:

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

接下来,我想要筛选广东和广西的消费者购买的id和产品id,该怎么做呢?

首先,广东和广西都有“广”字,我们可以用到刚刚说到的LIKE 和 %

另外一种方法是用在condition里面使用OR,我们一起来看看吧:

方法1:

SELECT id, product_id

FROM consumer

WHERE region LIKE "% 广 %"

方法2:

SELECT id, product_id

FROM consumer

WHERE region LIKE “广东"

OR region LIKE “广西"

输出结果:

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

在最后我们来看一个DISTINCT语法,这个关键字会加在SELECT语句中,加入这个关键字的时候,SQL会删除掉重复的行,比如我们要看看哪个省份有我们的消费者,我们应该这么写:

SELECT DISTINCT region

FROM consumer

输出结果:

快乐SQL复习 - WHERE条件查询和DISTINCT关键字

这就是关于SELECT条件查询的复习啦~

喜欢的话可以收藏~也可以给兔子点个赞噢~奥利给!