mysql常用命令
select
1 | SELECT * FROM table_name; # 选取所有内容 |
mysql语句对大小写不敏感,select == SELECT
1 | select * from emp where not sal > 1500; |
Like模糊查询
1 | Select * from emp where ename like 'M%'; |
查询 EMP 表中 Ename 列中有 M 的值,M 为要查询内容中的模糊信息。
- % 表示多个字值,**_** 下划线表示一个字符;
- M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。
- %M% : 表示查询包含M的所有内容。
- %M_ : 表示查询以M在倒数第二位的所有内容。
1 | SELECT column_name,column_name |
高级用法
join
1 | # QL INNER JOIN(简单的 JOIN)。 SQL INNER JOIN 从多个表中返回满足 JOIN 条件的所有行。 |
- INNER JOIN:如果表中有至少一个匹配,则返回行
- LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
- RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
- FULL JOIN:只要其中一个表中存在匹配,则返回行
union
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。
1 | SELECT column_name(s) FROM table1 |
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
SQL UNION ALL 语法
1 | SELECT column_name(s) FROM table1 |
注释:UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。
前者只会列出选出的值中不同的一些数据条,后者是所有的都返回。
Count
COUNT() 函数返回匹配指定条件的行数。
SQL COUNT(column_name) 语法
COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):
1 | SELECT COUNT(column_name) FROM table_name; |
SQL COUNT(*) 语法
COUNT(*) 函数返回表中的记录数:
1 | SELECT COUNT(*) FROM table_name; |
SQL COUNT(DISTINCT column_name) 语法
COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:
1 | SELECT COUNT(DISTINCT column_name) FROM table_name; |
注释:COUNT(DISTINCT) 适用于 ORACLE 和 Microsoft SQL Server,但是无法用于 Microsoft Access。