MySql基础-笔记5 -WHERE 、UPDATE、DELETE、LIKE、UNION使用
  NHjqxS4aAIAZ 2023年11月02日 47 0

语法和理论转自https://www.runoob.com/mysql/mysql-where-clause.html (目录)

1、WHERE 子句

1.1、语法

SELECT field1, field2,...fieldN FROM table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....

查询语句中你可以使用一个或者多个表,表之间使用逗号, 分割,并使用WHERE语句来设定查询条件。
你可以在 WHERE 子句中指定任何条件。
你可以使用 AND 或者 OR 指定一个或多个条件。
WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。
WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。

1.2、用于 WHERE 子句操作符列表

下表中实例假定 A 为 10, B 为 20 <table class="reference"> <tbody><tr> <th style="width:10%">操作符</th><th style="width:45%">描述</th><th>实例</th> </tr> <tr> <td>=</td><td> 等号,检测两个值是否相等,如果相等返回true</td><td> (A = B) 返回false。 </td> </tr> <tr> <td><>, != </td><td> 不等于,检测两个值是否相等,如果不相等返回true</td><td> (A != B) 返回 true。 </td> </tr> <tr> <td>></td><td> 大于号,检测左边的值是否大于右边的值, 如果左边的值大于右边的值返回true</td><td> (A > B) 返回false。 </td> </tr> <tr> <td><</td><td> 小于号,检测左边的值是否小于右边的值, 如果左边的值小于右边的值返回true</td><td> (A < B) 返回 true。 </td> </tr> <tr> <td>>=</td><td> 大于等于号,检测左边的值是否大于或等于右边的值, 如果左边的值大于或等于右边的值返回true</td><td> (A >= B) 返回false。</td> </tr> <tr> <td><=</td><td> 小于等于号,检测左边的值是否小于或等于右边的值, 如果左边的值小于或等于右边的值返回true</td><td> (A <= B) 返回 true。 </td> </tr> </tbody></table>

1.3、实际操作

1、在前几章已经创建的pymysql_study中查找study_username为张三的字段

在这里插入图片描述

2、再在数据表study_tb1中插入三条数据,study_username均为张三,然后再将其进行查找出来

在这里插入图片描述

1.4、BINARY 的使用

WHERE 子句的字符串比较是不区分大小写的,可以使用 BINARY 关键字来设定 WHERE 子句的字符串比较是区分大小写

插入study_username为ZHANGSAN和zhangsan两个表,然后使用WHERE和BINARY进行查询

在这里插入图片描述

2、UPDATE 更新

2.1、作用

修改或更新 MySQL 中的数据

2.2、语法

UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]

你可以同时更新一个或多个字段。
你可以在 WHERE 子句中指定任何条件。
你可以在一个单独表中同时更新数据。

2.3、实际操作

把study_id为11中的study_title改为“儿子长大了,时间飞逝啊”,并把study_password改为“987654321”

在这里插入图片描述

3、DELETE 语句

3.1、作用

使用 DELETE FROM 命令来删除 MySQL 数据表中的记录

3.2、语法

DELETE FROM table_name [WHERE Clause]

如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
你可以在 WHERE 子句中指定任何条件
您可以在单个表中一次性删除记录。

3.3、实际操作

1、把study_tb1中的牛二删除了,看着牛二不太顺眼,哈哈哈

在这里插入图片描述

2、把赵六也删了

在这里插入图片描述

4、LIKE 子句

4.1、作用

LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *

4.2、语法

SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'

你可以在 WHERE 子句中指定任何条件。
你可以在 WHERE 子句中使用LIKE子句。
你可以使用LIKE子句代替等号 =。
LIKE 通常与 % 一同使用,类似于一个元字符的搜索。
你可以使用 AND 或者 OR 指定一个或多个条件。
你可以在 DELETE 或 UPDATE 命令中使用 WHERE...LIKE 子句来指定条件。

4.3、实际操作

使用LIKE来查询study_tb1中所有study_username为张三的数据

在这里插入图片描述

4.4、其他使用

like 匹配/模糊匹配,会与 % 和 _ 结合使用。

'%a'     //以a结尾的数据
'a%'     //以a开头的数据
'%a%'    //含有a的数据
'_a_'    //三位且中间字母是a的
'_a'     //两位且结尾字母是a的
'a_'     //两位且开头字母是a的

1、使用LIKE和_搭配使用,查询张三,如“_三”

在这里插入图片描述

2、使用LIKE和_搭配使用,查询张三,如“张_”

在这里插入图片描述

3、使用LIKE和_搭配使用,查询zhangsan,如“_san”

在这里插入图片描述

5、UNION 操作符

5.1、作用

用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。

5.2、语法

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

expression1, expression2, ... expression_n: 要检索的列。

tables: 要检索的数据表。
WHERE conditions: 可选, 检索条件。
DISTINCT: 可选,删除结果集中重复的数据。默认情况下 UNION 操作符已经删除了重复数据,所以 DISTINCT 修饰符对结果没啥影响。
ALL: 可选,返回所有结果集,包含重复数据。

5.3、实际操作

创建演示数据库study_tb2,再创建演示数据

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

5.4、小结

UNION 语句:用于将不同表中相同列中查询的数据展示出来;(不包括重复数据)
UNION ALL 语句:用于将不同表中相同列中查询的数据展示出来;(包括重复数据)
SELECT 列名称 FROM 表名称 UNION SELECT 列名称 FROM 表名称 ORDER BY 列名称;
SELECT 列名称 FROM 表名称 UNION ALL SELECT 列名称 FROM 表名称 ORDER BY 列名称

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  SBowDWXjb0NT   2023年11月30日   41   0   0 redis线程池数据
NHjqxS4aAIAZ
最新推荐 更多