show tables或show tables from database_name;
解释:显示当前数据库中所有表的名称
1.SQL语言概要
SQL (Structured Query Language) 是具有数据操纵和数据定义等多种功能的数据库语言,这种语言具有交互性特点,能为用户提供极大的便利,数据库管理系统应充分利用SQL语言提高计算机应用系统的工作质量与效率。SQL语言不仅能独立应用于终端,还可以作为子语言为其他程序设计提供有效助力,该程序应用中,SQL可与其他程序语言一起优化程序功能,进而为用户提供更多更全面的信息。
1.1SQL语言用途
SQL(Structured Query Language)代表结构化查询语言。
它用于在关系数据库管理系统(RDMS)中存储和管理数据。
它是关系数据库系统的标准语言。它使用户可以创建,读取,更新和删除关系数据库和表。
所有RDBMS(例如MySQL,Informix,Oracle,MS Access和SQL Server)均使用SQL作为其标准数据库语言。
SQL允许用户使用类似英语的语句以多种方式查询数据库。
1.2SQL语言规则
SQL遵循以下规则:
结构查询语言不区分大小写。通常,SQL的关键字以大写形式编写。
SQL语句取决于文本行。我们可以在一个或多个文本行上使用单个SQL语句。
使用SQL语句,您可以执行数据库中的大多数操作。
SQL依赖于元组关系演算和关系代数。
1.3SQL执行过程
SQL过程:
当针对任何RDBMS执行SQL命令时,系统会找出执行请求的最佳方法,然后SQL引擎将确定如何解释任务。
在此过程中,将包括各种组件。这些组件可以是优化引擎,查询引擎,查询调度程序,经典组件等。
所有非SQL查询均由经典查询引擎处理,但SQL查询引擎不会处理逻辑文件。
2.SQL语言分类
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。
2.1 DDL
DDL(data definition language):数据定义语言
DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。
常用的语句关键字包括:
(1)CREATE
(2)ALTER
(3)DROP
2.2 DCL
DCL(Data Control Language):数据控制语言
用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等 。
常用的语句关键字包括:
(1)COMMIT 提交
(2)SAVEPOINT 保存点
(3)ROLLBACK 回滚
(4)SET TRANSACTION 设置当前事务的特性,它对后面的事务没有影响
2.3 DML
DML(data manipulation language):数据库操纵语言
用于添加、删除、更新和查询数据库记录,并检查数据完整性。SQL中处理数据等操作统称为数据操纵语言 。
常用的语句关键字包括:
(1)SELECT
(2)UPDATE
(3)INSERT
(4)DELETE
DQL数据查询语言
主要对表进行查询操作。查询操作只是将需要的数据从原始表中筛选出来,对原始表数据没有任何影响
关键字:select
单表查询
1、查询tb_student表所有的数据
select * from 表名;
2、查询某列数据
select 列名1,列名2,...... from 表名;
3、查询的同时起别名
select 列名 as 别名,列名 as 别名... from 表名;(as可以省略)
4、按照指定要求查询
select * from 表名 where 列=值; -----等于
select * from 表名 where 列!=值; -----不等于
select * from 表名 where 列<>值; -----不等于
select * from 表名 where 列=值 and 列=值; -----并集
select * from 表名 where 列=值 && 列=值; -----并集
select * from 表名 where 列=值 or 列=值;- ----交集
select * from 表名 where 列=值 || 列=值; -----交集
select * from 表名 where 列>=值 and 列<=值; -----小于等于
select * from 表名 where 列 is null; -----值为空
select * from 表名 where 列 is not null; -----值不为空
select * from 表名 where 列 between 值1 and 值2; ---两者值之间
select * from 表名 where 列 in(值1,值2,值3,...); ---指定几个值
5、模糊查询
模糊查询关键字like
通配符:
%:任意个字符
_:单个字符
语法:select * from tb_student where 列 like ‘要求’;
6、limit关键字
select * from 表名 limit 数值; ---指定前几行的数据
7、分页查询:limit
select * from 表名 limit 数值1,数值2
数值1:从第几条开始拿数据(数据的索引)
数值2:拿几条数据
提供的信息:页码page,每页显示条数:count
数值1的变化规律:(page-1)*count
8、排序
order by 要排序的列 asc(升序)/desc(降序)/不写(默认升序)
语法:select * from 表名 order by 列 顺序;
9、去重
关键字;ditinct
语法:select distinct 列名 from 表名;