MySql常用DML语句

一、WHERE 子句
我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。
如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。
以下是 SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:
SELECT field1, field2,…fieldN FROM table_name1, table_name2…
[WHERE condition1 [AND [OR]] condition2…
1、 查询语句中你可以使用一个或者多个表,表之间使用逗号, 分割,并使用WHERE语句来设定查询条 件。
2、 你可以在 WHERE 子句中指定任何条件。
3、 你可以使用 AND 或者 OR 指定一个或多个条件。
4、 WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。示例代码:
在这里插入图片描述

5、WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。
以下为操作符列表,可用于 WHERE 子句中。
下表中实例假定 A 为 10, B 为 20
在这里插入图片描述

如果我们想在 MySQL 数据表中读取指定的数据,WHERE 子句是非常有用的。
使用主键来作为 WHERE 子句的条件查询是非常快速的。
如果给定的条件在表中没有任何匹配的记录,那么查询不会返回任何数据。
二、LIKE 子句
我们知道在 MySQL 中使用 SQL SELECT 命令来读取数据, 同时我们可以在 SELECT 语句中使用 WHERE 子句来获取指定的记录。
WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 “runoob_author = ‘RUNOOB.COM’”。
但是有时候我们需要获取 runoob_author 字段含有 “COM” 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。
SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号*。
如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。
以下是 SQL SELECT 语句使用 LIKE 子句从数据表中读取数据的通用语法:
SELECT field1, field2,…fieldN
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue‘
1、 你可以在 WHERE 子句中指定任何条件。
2、 你可以在 WHERE 子句中使用LIKE子句。如示例代码:
在这里插入图片描述

3、 你可以使用LIKE子句代替等号 =。
4、 LIKE 通常与 % 一同使用,类似于一个元字符的搜索。
5、 你可以使用 AND 或者 OR 指定一个或多个条件。
6、 你可以在 DELETE 或 UPDATE 命令中使用 WHERE…LIKE 子句来指定条件。
三、JOIN
JOIN 按照功能大致分为如下三类:
1、 INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
SELECTtable1.field1,table1.field2,…,table1.fieldN,table2.field1, table2.field2,…,table2.fieldN
FROM table1
INNER JOIN table2 ON table1.xx1_id = table2.xx2_id
以下为INNER JOIN(内连接,或等值连接)示例代码:
在这里插入图片描述

2、 LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
SELECTtable1.field1,table1.field2,…,table1.fieldN,table2.field1, table2.field2,…,table2.fieldN
FROM table1
LEFT JOIN table2 ON table1.xx1_id = table2.xx2_id
以下为LEFT JOIN(左连接)示例代码:
在这里插入图片描述

3、RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,应匹配的 记录。
SELECTtable1.field1,table1.field2,…,table1.fieldN,table2.field1, table2.field2,…,table2.fieldN
FROM table1
RIGHT JOIN table2 ON table1.xx1_id = table2.xx2_id
以下为RIGHT JOIN(右连接)示例代码:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值