SQL字典

发布时间:2024年01月20日

引言

? ? ? 本文是笔者在学习Oracle数据库的一些基本操作时,针对一些词汇的理解进行记录,形成一份SQL字典,其中包含了单词表和符号表,供大家进行学习交流。

单词表

单词表
序号单词注释用途例句备注
1create创建CREATE DATABASE 用于创建数据库,CREATE TABLE 语句用于创建数据库中的表。创建数据库:CREATE DATABASE database_name;
创建数据表:CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
2drop删除用于删除索引、表和数据库。删除表:DROP TABLE 表名称
3select查询SELECT 语句用于从表中选取数据。SELECT 列名称 FROM 表名称
或SELECT * FROM 表名称
SQL 语句对大小写不敏感。SELECT 等效于 select,“*”表示表中所有列。
4insert添加INSERT INTO 语句用于向表格中插入新的行。INSERT INTO 表名称 VALUES (值1, 值2,....)
可指定所要插入数据的列
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
5update更新Update 语句用于修改表中的数据。UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
6database数据库
7table
8alter修改用于在已有的表中添加、修改或删除列。在表中添加列:
ALTER TABLE table_name ADD column_name datatype
在表中删除列:
ALTER TABLE table_name DROP COLUMN column_name
9delete删除DELETE 语句用于删除表中的行。DELETE FROM 表名称 WHERE 列名称 = 值
10group by分组用于结合合计函数,根据一个或多个列对结果集进行分组。SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name
11order by排序ORDER BY 语句用于根据指定的列对结果集进行排序。SELECT * FROM 表名称 ORDE BY? 列ORDER BY 语句默认按照升序对记录进行排序。
12asc升序
13desc降序
14inner join内连接在表中存在至少一个匹配时,INNER JOIN关键字返回行。SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2.column_nameINNER JOIN 与 JOIN 是相同的。
15outer join外连接
16left join左连接LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name在某些数据库中, LEFT JOIN 称为 LEFT OUTER JOIN。
17right join右连接RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2.column_name在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN。
18full join全连接只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。SELECT column_name(s) FROM table_name1FULL JOIN table_name2 ON table_name1.column_name=table_name2.column_name在某些数据库中, FULL JOIN 称为 FULL OUTER JOIN。
19values
20constraint强制约束用于限制加入表的数据的类型,可以在创建表时规定约束(通过 CREATE TABLE 语句),或者在表创建之后也可以(通过 ALTER TABLE 语句)。
21null空值创建或修改表中的列属性,NOT NULL 约束强制列不接受 NULL 值,如果不向字段添加值,就无法插入新记录或者更新记录。CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
22check检查用于限制列中的值的范围,如果对单个列定义 CHECK 约束,那么该列只允许特定的值;如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)
23foreign key外键一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY,FOREIGN KEY 约束用于预防破坏表之间连接的动作,防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
)
24primary key主键PRIMARY KEY 约束唯一标识数据库表中的每条记录,主键必须包含唯一的值,主键列不能包含 NULL 值,每个表都应该有一个主键,并且每个表只能有一个主键。CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)
)
25set设置
26default默认用于向列中插入默认值,如果没有规定其他的值,那么会将默认值添加到所有的新记录。CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
27unique唯一UNIQUE 约束唯一标识数据库表中的每条记录。CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (Id_P)
)
每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
28references引用
29union?联合UNION 操作符用于合并两个或多个 SELECT 语句的结果集。SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同,默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
30filegroup文件组
31filegrowth增长率
32filename逻辑名称
33maxsize最大容量
34modity移除
35distinct去除重复DISTINCT 用于返回唯一不同的值,去除某一列包含重复值。SELECT DISTINCT 列名称 FROM 表名称
36topTOP 子句用于规定要返回的记录的数目。SELECT TOP number|percent column_name(s)
FROM table_name
并非所有的数据库系统都支持 TOP 子句。
37percent百分比SELECT? TOP? n? PERCENT FROM TABLE表示返回的前面的n%行
38having过滤WHERE关键字无法与合计函数一起使用,所以要用Having来引用合计函数SELECT column_name, aggregate_function(column_name) FROM table_name
WHERE column_name operator value GROUP BY column_name HAVING aggregate_function(column_name) operator value
WHERE语句在GROUPBY语句之前;SQL会在分组之前计算WHERE语句。
HAVING语句在GROUPBY语句之后;SQL会在分组之后计算HAVING语句。
39column
40size大小
41remove删除
42where从哪儿(后面接条件)如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
或SELECT * FROM 表名称 WHERE 列 运算符 值
43as起别名可以为列名称和表名称指定别名。给表起别名:
SELECT column_name(s) FROM table_name AS alias_name
给列起别名:
SELECT column_name AS alias_name
FROM table_name
44between…and在…之间操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2
45escape转译定义转义字符
46inIN 操作符允许我们在 WHERE 子句中规定多个值。SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)
47likeLIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
48identity标识列(自增长)
49procedure存储过程
50exec执行
51function函数
52break退出
53continue跳出
54while
55print输出
56begin…end开始…结束
57view视图视图是基于 SQL 语句的结果集的可视化的表。视图创建:
CREATE VIEW view_name AS SELECT column_name(s)
FROM table_name WHERE condition
视图总是显示最近的数据。每当用户查询视图时,数据库引擎通过使用 SQL 语句来重建数据。
58substr截取用于截取字符串值的某一段信息。?substr(string string, int a, int b);1、string 需要截取的字符串
2、a 截取字符串的开始位置(注:当a等于0或1时,都是从第一位开始截取)
3、b 要截取的字符串的长度
59abs绝对值
60cast转换
61convert转换
62transact执行
63orOR 可在 WHERE 子语句中把两个或多个条件结合起来,如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。SELECT 列名称 FROM 表名称 WHERE 列 运算符 值(条件一) OR 列 运算符 值(条件二)
64andAND 可在 WHERE 子语句中把两个或多个条件结合起来,如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。SELECT 列名称 FROM 表名称 WHERE 列 运算符 值(条件一) AND 列 运算符 值(条件二)
65into赋值(配合select使用)SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中,常用于创建表的备份复件或者用于对记录进行存档。ELECT *INTO new_table_name [IN externaldatabase] FROM old_tablename
66instr查找指定字符串的位置instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束。?select instr('abcdefgh','e') position from dual;结果:5;
67to_char转化为字符型将数值型或者日期型转化为字符型。使用TO_CHAR函数处理数字,规范:TO_CHAR(number, '格式')
使用TO_CHAR函数处理日期,规范:TO_CHAR(date,’格式’);
68to_number转换为数值型将字符串转换为数值型的格式TO_NUMBER(char, '格式')
69round四舍五入取值对数字型进行四舍五入后,返回结果值。round(number,y) ,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位。 select round(5555.6666,2.1)from dual; 结果:5555.67
70trunc精确位数取值对数字型进行精确取值,并返回结果值。trunc(rumber,y),数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。select trunc(5555.6666,2.1)from dual;结果:5555.66

符号表

序号符号注释用途例句备注
1?'单引号1.做字符串引用;例如'abc';表示这是字符串类型;
2.做引号的转义;
2"双引号
3&并且在Oracle里有特殊含义,是一个宏变量标识符,& 是从需要外部输入输入的变量
4||连接符||表示拼接,如'a'||'b' 等价于'ab'
5@定义变量
6%模糊查询'%a%'就代表一个字符串只要包含字母a就符合条件
'%a'则代表一个字符串需要以字母a结尾才符合条件
'a%'就是以a开头的字符串了
7*引用代表中的列1.没有限定符的话就是代表所有引用表的字段;
2.有限定符的话,就是代表限定表的所有列。
8()括号
9--注释
10
11#{}传参符在动态解析的时候, 会解析成一个参数标记符,以预编译的形式,将参数设置到SQL语句中;#方式能够很大程度防止sql注入;$方式无法防止Sql注入。大多数情况下,我们去参数的值都应该使用#{}
12${}传值符取出的值直接拼装在SQL语句中;会有安全问题
13_下划线表示任何单一字符。

文章来源:https://blog.csdn.net/qq_40664711/article/details/135721729
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。