目录
WHERE语法:
SQL SELECT WHERE 子句
关键字BINARY介绍
UPDATE语法
SQL UPDATE 语句:
DELECT语法
MySQL DELETE 语句
LIKE语法
MySQL LIKE 语句
UNION语法
MySQL UNION 操作符
WHERE语法:
- 在MySQL数据查询中,如果我们想按照某些特定条件来查询数据,我们可以将WHERE子句,添加到SELECT语句中。
- SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:
SELECT X1,X2 FROM table_name1, table_name2 [WHERE condition1 [AND [OR]] condition2
- 查询语句中你可以使用一个或者多个表,表之间使用逗号, 分割,并使用WHERE语句来设定查询条件。
- 你可以在 WHERE 子句中使用 AND 或者 OR 指定一个或多个条件。
- WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令。
- WHERE 子句类似于程序语言中的 if 条件,根据 MySQL 表中的字段值来读取指定的数据。
SQL SELECT WHERE 子句
SELECT * from T_USER WHERE USERNAME='测试';
关键字BINARY介绍
mysql> SELECT * from t_user WHERE BINARY username='cs';
mysql> SELECT * from t_user WHERE BINARY username='CS';
MySQL 的 WHERE 子句的字符串比较是不区分大小写的。 你可以使用 BINARY 关键字来设定 WHERE 子句的字符串比较是区分大小写的。
UPDATE语法
- 如果我们需要修改或更新 MySQL 中的数据,我们可以使用 SQL UPDATE 命令来操作。
UPDATE t_user SET username=cs, userpwd=123 [WHERE Clause]
- 你可以同时更新一个或多个字段。
- 你可以在 WHERE 子句中指定任何条件。
- 你可以在一个单独表中同时更新数据。
- 当你需要更新数据表中指定行的数据时 WHERE 子句是非常有用的。
SQL UPDATE 语句:
mysql> UPDATE csdb SET cs_title='C++' WHERE cs_id=3;
- 在 SQL UPDATE 命令使用 WHERE 子句来更新 csdb 表中指定的数据:
- 以下实例将更新数据表中 cs_id 为 3 的 cs_title 字段值:
DELECT语法
- 你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录。
- 以下是 SQL DELETE 语句从 MySQL 数据表中删除数据的通用语法:
- 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
- 你可以在 WHERE 子句中指定任何条件
- 您可以在单个表中一次性删除记录。
MySQL DELETE 语句
DELETE FROM table_name [WHERE Clause]
- 在 SQL DELETE 命令中使用 WHERE 子句来删除 MySQL 数据表 table_name 所选的数据。
mysql> DELETE FROM csdb WHERE cs_id=3;
- 将删除 csdb 表中cs_id 为3 的记录:
LIKE语法
- 我们知道在 MySQL 中WHERE 子句中可以使用等号 = 来设定获取数据的条件,如 "runoob_author = 'RUNOOB.COM'"。
- 但是有时候我们需要获取 runoob_author 字段含有 "COM" 字符的所有记录,这时我们就需要在 WHERE 子句中使用 SQL LIKE 子句。
- SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。
- 如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。
- 你可以在 WHERE 子句中指定任何条件。
- 你可以在 WHERE 子句中使用LIKE子句。
- 你可以使用LIKE子句代替等号 =。
- LIKE 通常与 % 一同使用,类似于一个元字符的搜索。
- 你可以使用 AND 或者 OR 指定一个或多个条件。
- 你可以在 DELETE 或 UPDATE 命令中使用 WHERE...LIKE 子句来指定条件。
MySQL LIKE 语句
SELECT field1, field2,...fieldN FROM table_name WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'
在 SQL SELECT 命令中使用 WHERE...LIKE 子句来从MySQL数据表cs_db中读取数据。
mysql> SELECT * from csdb WHERE username LIKE '%cs';
UNION语法
MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
MySQL UNION 操作符
- MySQL UNION 操作符语法格式:
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: 可选,返回所有结果集,包含重复数据。
UNION使用示例:
代码操作:
SQL UNION 示例
SQL UNION ALL示例
WHERE 中 SQL UNION ALL