数据库语法(SQL语法)

267 阅读4分钟

Tips:仅列了主要语法


目录

  1. SQL简介

  2. SQL基本语法


1. SQL简介

  1. SQL全称是Structured Query Language,结构化查询语言,它可以用来访问和操作数据库,是为了管理关系型数据库而设计的语言。而其操作的对象就是数据库中的表,表中有很多列和行,通常每列第一行为这一列的标识,代表这一列是什么,其他行则储存数据。

  2. 注意,SQL对大小写不敏感。

  3. SQL可以分为两个部分,数据操作语言(DML)和数据定义语言(DDL) DML:

    • SELECT:从数据表中获取数据
    • UPDATE:更新数据表中的数据
    • DELETE:从数据表中删除数据
    • INSERT INTO:向数据表插入数据

    DDL:

    • CREATE DATABASE:创建数据库
    • ALTER DATABASE:修改数据库
    • CREATE TABLE:创建表格
    • ALTER TABLE:修改表格
    • DROP TABLE:删除表格
    • CREATE INDEX:创建索引
    • DROP INDEX:删除索引

2. SQL基本语法

2.1 select

select用于从表中选取数据

  • select 列名称 from 表名称
  • *替代列名称,可快速查询所有的列
  • select distinct 列名称 from 表名称来返回列中不同的值,即不返回列中重复的值
  • select 列名称 from 表名称 where 列名称 运算符 值来对select添加限制条件,其中运算符可以是=、<>、>、<、>=、<=、between、like,即用于返回满足限制条件的值
  • 文本值需用单引号括起,数值不用
  • where中用andor来增加限制条件,and为需要满足两个,or只用满足其中一个

2.2 Order By

order by可用于对指定列进行排序,默认是升序排序

  • SELECT 列名 FROM 表名 ORDER BY 列名,按照字母顺序升序排列
  • SELECT 列名 FROM 表名 ORDER BY 列名 DESC,按照字母降序排列
  • SELECT 列名,列名,列名 FROM 表名 ORDER BY 列名,列名,列名,可以一次选择多列进行排序,优先按照前面的列名先排列

2.3 Insert InTo

Insert InTo用于向表格插入新的行

  • insert into 表名称 values(值1,值2,····),此方法用于直接插入新的行,自动匹配每一列
  • insert into 表名(列1,列2,列3) values(值1,值2,值3),此方法用于指定列插入数据

2.4 UpDate

update用于修改表中的数据

  • update 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值,用于指定修改某处的值
  • update 表名称 SET 列名称 = 新值,列名=新值,列名=新值 WHERE 列名称 = 某值,用于修改某一行的多列

2.5 Delete

delete用于删除表中的某一行

  • DELETE FROM 表名称 WHERE 列名称 = 值,指定删除某一行的所有值
  • delete * from 表名称,删除这个表的所有行

2.6 Like

like用于在where中指定搜索模式

  • select 列名 from 表名 where 列名 like 模式,这个模式可以有,比如:'%N',指定搜索以N开头的值,'%g',以g结尾的值,'%lon%',搜索包含lon的值。
  • select 列名 from 表名 where 列名 not like 模式,搜索不是此模式的值

2.7 Create Database

CREATE DATABASE database_name创建一个数据库

2.8 Create table

用于创建一个表

create table 表名称
{
	列名称1 数据类型,
	列名称2 数据类型,
	····· 
}
```
其中,常用数据类型如下图所示:

2.9 Create Index

create index用于创建索引,索引对用户不可见,但可以使数据库应用程序可以更快的查询数据。但是,更新一个包含索引的表比不包含索引的表要花更多时间,因为索引也需要更新,所以只在常常被搜索的列上创建索引

  • create index 索引名 on 表名(列名)

2.10 Alter

alter用于在已有表中添加,修改,删除列

  • alter table 表名 add 列名 数据类型,用于添加列,并指定数据类型
  • alter table 表名 drop column 列名,用于删除指定列
  • alter table 表名 alter column 列名 数据类型,用于改变列的数据类型

2.11 Drop

drop可删除表中的索引,删除整个表,删除数据库和仅删除表中数据

  • ALTER TABLE 表名 DROP INDEX 索引名,用于删除索引
  • DROP TABLE 表名称,用于删除整个表
  • DROP DATABASE 数据库名称,用于删除数据库
  • TRUNCATE TABLE 表名称,用于删除表内数据,而不是删除表