2021-07-31 SQL Day14

一.数据库拓展

image.png

image.png

二.课后作业

Q:按照我们课堂操作,回顾总结下这 14 天的课程内容。并上传结果。

******DML******

--- 单表查询

SELECT 列 FROM 表; ---二维表
--- * 常数 四则运算 DISTINCT CONCAT CONCAT_WS
--- 别名 AS 


ORDER BY 列; --- 最后一条子句
--- ASC DESC 作用紧跟着的列
--- 2,3  不建议


WHERE 过滤条件; --- SELECT 之后
--- 列 > = < != BETWEEN...AND...  IN  IS NULL  IS NOT NULL
--- CONVERT(... USING gkb)
--- 模糊查询 LIKE  _%
--- 多条件过滤 AND OR


聚合函数,不检索,只汇总
COUNT()
--- 1 * col ---NULL DISTINCT
SUM()
--- NULL
AVG()
--- NULL
MAX()
MIN() --- 文本格式


GROUP BY 列; --- 聚合键 尽量不要用别名
SELECT 聚合键,聚合函数 FROM 表;

HAVING 聚合函数 > = < !=
--- 聚合键在WHERE中过滤


SELECT ... FROM ... WHERE ... GROUP BY ... HAVING ...ORDER BY ...;
FROM ... WHERE ... GROUP BY ... HAVING ... SELECT ... ORDER BY...  ---执行

---数据类型

数值型
INTEGER DECIMAL FLOAT ---(宽度,小数点后位数)
ABS() ROUND()

文本型
CHAR VARCHAR ---(字符个数)
LENGTH() CHAR_LENGTH()  RTRIM() LTRIM()  UPPER() LOWER()

日期型
DATE TIME DATETIME
YEAR() HOUR() MONTH() MONTHNAME() NOW() CURDATE() CURTIME() DATE_ADD() DATE_SUM()


--- 多表查询

--- 子查询
标量子查询 -- 用法和常数
关联子查询 -- 组内使用常数 WHERE 在子句内
普通子查询 -- 一整列,IN,--二维表,新的检索表

-- 联结 ---列
内联结 自联结 INNER JOIN ... ON
外联结  OUTER JOIN ... ON .... ---LEFT/RIGHT/FULL

--组合 --- 行
UNION
UNION ALL 不去重


--- 增删改

INSERT INTO 表 VALUES( , , );
INSERT INTO 表 ( , , ) VALUES( , , );
INSERT INTO 表 SELECT 列 FROM 表;

注意 NULL

UPDATE 表
SET 字段 = 常数、NULL
WHERE 过滤条件;


DELETE FROM 表
WHERE ...;

TRUNCATE TABLE 表;



******DDL******

--创建
CREATE TABLE 表
(
        字段 数据类型 字段属性,
);

CREATE TABLE 表
AS
SELECT 列 FROM 表;

RANAME 表 TO 新表名;


--修改
ALTER TABLE
ADD 字段 数据类型 字段属性;
DROP 字段, DROP 字段;
DROP COLUMN 字段;
MODIFY COLLUMN 字段 数据类型 字段属性;

--删除
DROP TABLE 表名;


--视图
CREATE VIEW 视图名
AS
SELECT 列 FROM 表;

DROP VIEW 视图名;

PROCEDURE
BEGIN END
CALL


******DCL******

COMMIT;
ROLLBACK;
SAVEPOINT;
RELEASE SAVEPOINT 保留点名;


你可能感兴趣的:(2021-07-31 SQL Day14)