SQL语言介绍及分类

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)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。
常用的语句关键字包括:
(1CREATE2ALTER3DROP 


  
   

2.2 DCL

DCL(Data Control Language):数据控制语言
用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等 。
常用的语句关键字包括:
(1COMMIT 提交 
(2SAVEPOINT  保存点 
(3ROLLBACK    回滚 
(4SET TRANSACTION   设置当前事务的特性,它对后面的事务没有影响
 


  
   

2.3 DML

DML(data manipulation language):数据库操纵语言

用于添加、删除、更新和查询数据库记录,并检查数据完整性。SQL中处理数据等操作统称为数据操纵语言 。

常用的语句关键字包括:
(1SELECT2UPDATE3INSERT4DELETE
 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 表名; 


  
   

猜你喜欢

转载自blog.csdn.net/weixin_45537987/article/details/106949078