SQL 基础语句

时间: 2023-07-11 admin 互联网

SQL 基础语句

SQL 基础语句

SQL 对大小写不敏感  

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

 

SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

查询和更新指令构成了 SQL 的 DML 部分:

  • 1.   SELECT - 从数据库表中获取数据   

  • 语法:

  • SELECT 列名称 FROM 表名称

  • SELECT * FROM 表名称 (提示:星号(*)是选取所有列的快捷方式。

  • 1.1.    SELECT DISTINCT 语句 - 在表中,可能会包含重复值。关键词 DISTINCT 用于返回唯一不同的值。

  • 语法:

  • SELECT DISTINCT 列名称 FROM 表名称

  • 1.2.    WHERE 子句用于规定选择的标准 - 如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。

  • 语法:

  • SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

            

            注释:在某些版本的 SQL 中,操作符 <> 可以写为 !=。

            SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。

  • 1.3.   AND 和 OR 运算符 - AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤。

  • AND:条件同时成立“与”OR:条件有一个成立即可“或”

  • 语法:

  • SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 AND WHERE 列 运算符 值

  • SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 OR WHERE 列 运算符 值

  • 1.4.   ORDER BY 子句 - 用于对结果集进行排序。

  • ORDER BY 语句用于根据指定的列对结果集进行排序。

  • ORDER BY 语句默认按照升序对记录进行排序。

  • 如果按照降序对记录进行排序,可以使用 DESC 关键字。

  • 语法:

  • SELECT 列名称FROM 表名称 ORDER BY 列名称

  • SELECT 列名称FROM 表名称 ORDER BY 列名称 DESC

  • SELECT 列名称,列名称FROM 表名称 ORDER BY 列名称 DESC, 列名称 ASC(ASC:升序)

  • 2.   UPDATE - 更新数据库表中的数据,用于修改表中的数据。

  • 语法:

  • UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

  • 3.   DELETE - 从数据库表中删除数据,用于删除表中的行。

  • 语法:

  • DELETE FROM 表名称 WHERE 列名称 = 值

  • 4.   INSERT INTO - 向数据库表中插入数据, 用于向表格中插入新的行。

  • 语法:

  • INSERT INTO 表名称 VALUES (值1, 值2,....)

  • INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)

SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

  • 1.    CREATE DATABASE - 创建新数据库

  • 语法:

  • CREATE DATABASE 数据库名

  • 2.    ALTER DATABASE - 修改数据库

  • 3.    CREATE TABLE - 创建新表, 用于创建数据库中的表。

  • 语法:

  • CREATE TABLE 表名称

  • (

  • 列名称1 数据类型,

  • 列名称2 数据类型,

  • 列名称3 数据类型,

  • ....

  • )

            

 

           数据类型(data_type)规定了列可容纳何种数据类型。表格包含了SQL中最常用的数据类型。

  • 4.     ALTER TABLE - 变更(改变)数据库表,用于在已有的表中添加、修改或删除列。

  • 语法:

  • 添加:ALTER TABLE 表名称 ADD 列名称 数据类型

  • 删除:ALTER TABLE 表名称 DROP COLUMN 列名称

  • 修改:ALTER TABLE 表名称 ALTER COLUMN 列名称 数据类型

  • 5.     DROP TABLE - 删除表,删除表定义及该表的所有数据、索引、触发器、约束和权限规范。

  • 语法:

  • DROP TABLE 表名称

  • 6.    CREATE INDEX - 创建索引(搜索键),用于在表中创建索引。

  • 在不读取整个表的情况下,索引使数据库应用程序可以更快地查找数据。

  • 语法:

  • 创建简单的索引,允许使用重复的值:CREATE  INDEX 索引名 ON 表名称(列名称

  • 创建一个唯一的索引,唯一的索引意味着两个行不能拥有相同的索引值:CREATE  UNIQUE  INDEX 索引名  ON 表名称列名称

  • 如果以降序索引某个列中的值,可以在列名称之后添加保留字 DESC:CREATE  INDEX 索引名  ON 表名称(列名称 DESC

  • 如果索引不止一个列,可以在括号中列出这些列的名称,用逗号隔开:CREATE  INDEX 索引名  ON 表名称(列名称,列名称

  • 7.     DROP INDEX - 删除索引,通过使用 DROP 语句,可以轻松地删除索引、表和数据库。

  • 用于 MS SQL Server 的语法:DROP INDEX 表名称.列名称

  • 用于 MySQL 的语法:ALTER TABLE 表名称 DROP INDEX 列名称

  • 用于 IBM DB2 和 Oracle 语法:DROP INDEX 列名称

  • 用于删除表(表的结构、属性以及索引也会被删除):DROP TABLE 表名称

  • 用于删除数据库:DROP DATABASE 数据库名称

  • 除去表内的数据,但并不删除表本身(仅仅删除表格中的数据):TRUNCATE TABLE 表名称