Mysql WHERE 子句

在MySQL这个充满奇妙数据宝藏的世界里,“Where子句”就像是一把超级精准的“魔法筛选器”🔍,能帮助我们从海量的数据海洋中捞出符合特定条件的“小鱼”(也就是数据记录啦)。想象一下,数据库里的数据表如同一个个装满各种物品的大箱子,而“Where子句”让我们可以迅速定位到箱子里我们真正想要的那些宝贝玩意儿哦(๑˘ ˘๑)。

语法

“Where子句”通常紧跟在“SELECT”、“UPDATE”、“DELETE”等语句后面,用来限定操作所针对的数据范围。

基本语法结构如下:

SELECT [列名1], [列名2],...
FROM [表名]
WHERE [条件表达式];

演示

例如,我们有一个名为“students”的表,里面存储着学生们的信息,包含“id”(学生编号)、“name”(姓名)、“age”(年龄)、“gender”(性别)这些列。

要是我们只想查看年龄大于 18 岁的学生信息,就可以这样写:

SELECT id, name, age, gender
FROM students
WHERE age > 18;

在这里,“age > 18”就是“条件表达式”,像个严格的小卫士,只放行满足这个年龄条件的学生记录,是不是超酷😎!

条件运算符

比较运算符

操作符
描述
实例

=

等号,检测两个值是否相等,如果相等返回true

(A = B) 返回false。

<>, !=

不等于,检测两个值是否相等,如果不相等返回true

(A != B) 返回 true。

>

大于号,检测左边的值是否大于右边的值, 如果左边的值大于右边的值返回true

(A > B) 返回false。

<

小于号,检测左边的值是否小于右边的值, 如果左边的值小于右边的值返回true

(A < B) 返回 true。

>=

大于等于号,检测左边的值是否大于或等于右边的值, 如果左边的值大于或等于右边的值返回true

(A >= B) 返回false。

<=

小于等于号,检测左边的值是否小于或等于右边的值, 如果左边的值小于或等于右边的值返回true

(A <= B) 返回 true。

逻辑运算符

  • AND(与):当我们需要多个条件同时满足时,它就登场啦。比如要查找年龄大于 18 岁且性别为“男”的学生,语句是“WHERE age > 18 AND gender = '男'”,只有年龄和性别这两个条件都符合的记录才会被选中,真的是很严格的“双保险”筛选呢(๑•̀ㅂ•́)و✧。

  • OR(或):和“AND”相反,只要满足其中一个条件就行啦。例如“WHERE city = '北京' OR city = '上海'”,能把来自北京或者上海的相关记录都找出来,是不是像打开了两扇不同城市的“数据大门”呀。

  • NOT(非):用来否定后面的条件,像“WHERE NOT age < 20”,实际就是找出年龄大于等于 20 岁的记录咯,有一种“反转魔法”的感觉呢。

实例

等于条件

不等于条件

大于条件

小于条件

大于等于条件

小于等于条件

组合条件

模糊匹配条件

IN 条件

NOT 条件

BETWEEN 条件

IS NULL 条件

IS NOT NULL 条件

最后更新于