2024年5月31日发(作者:)

MySQL常用功能简单介绍

博客:/

马哥教育:

【Mysql的查询功能】

show databases; 查看数据库列表

use jiaowu; 切换到jiaowu数据库

show tables; 查看数据库中所有表

SELECT的整体语法形式:

SELECT values_to_display

FROM table_name

WHERE expression

GROUP BY how_to_group

HAVING expression

ORDER BY how_to_sort

LIMIT row_count;

常见的查询语法:

COUNT(*): 查看总行数

MAX(filed):返回最大值

MIN(filed):返回最小值

AVG(filed):返回平均值

SUM(filed):求和的

常见的比较操作符:

=, <>aka !=, <, <=, >, >=, <=>相当于等于但是可以与空值相比较

常见的组合条件:

AND 与

OR 或

NOT 非

通配符的使用:LIKE

% 匹配任意长度的字符

_匹配单个长度的单个字符

RLIKE:自己匹配方式,支持正则表达式匹配

排列方式:

默认排列方式为升序(ASC)

ORDER BY home DESC 表示以降序的方式进行排列

DISTINCT 重复只显示一次

查询分为单表查询,联结查询,子查询,联合查询

单表查询:执行在一张表上的简单查询

联结查询:将多张表连接起来的简单查询

交叉联结:笛卡尔乘积

mysql> SELECT * FROM students,tutors;

内联结:等值联结,用的比较多的查询方式

mysql> SELECT * FROM students,tutors WHERE =;

外联结:JOIN 不是完整的等值联结。

左外联结:LEFT JOIN 以左表为基准 tb1 LEFT JOIN tb2 ON condition

mysql> SELECT * FROM students LEFT JOIN tutors ON =;

右外联结:RIGHT JOIN 以右表为基准 tb1 RIGHT JOIN tb2 ON condition

mysql> SELECT * FROM students RIGHT JOIN tutors ON =;

自联结:自己与自己联结(学习利用别名进行操作),通过一张表的两个字段关系建立

连接关系。是内联结的特殊形式。

mysql> SELECT , FROM students AS s,students AS t WHERE =;

子查询:求平均年龄的查询,是复杂查询,嵌套查询,有时可能针对一张表的,它的操作机

制是查询中嵌套了别的查询语句。(子查询弊端:优化不是特别好,使用可能会导致系统性

能下降)

常见的主要有以下三种:

(1),用于WHERE子句或HAVING子句中的子查询

mysql> SELECT Name,Age FROM students WHERE Age > (SELECT AVG(Age) FROM

students);

用于比较操作符或逻辑操作符中(子查询的返回值只能一个/行);

mysql> SELECT Name,Age FROM students WHERE Age > (SELECT Age FROM students

WHERE TID>3); 返回值会有多个所以会报错

用于IN操作符(子查询的返回值可以多行);

mysql> SELECT Name FROM students WHERE TID IN (SELECT TID FROM tutors WHERE

Age >50); 可以返回多个值

用于EXISTS布尔比较中:只要有结果就可以返回;

这种不常见

(2),用于FROM子句中的子查询:把查询语句当做表使用,若表多的情况下请启用别