20220720课堂笔记
作者:互联网
20220720课堂笔记
上午
一、MySQL安装、配置
1.数据库概念:
通过一定的结构,来组织、存储和管理数据的软件系统
数据库管理系统(Data Management System ,简称DBMS)用于管理数据库
2.数据库分类:
关系型数据库:
Oracle 、 Microsoft SQL Server 、 MySQL 、 DB2 、 Microsoft Access等
非关系型数据库
二、数据库操作(SQL)上
1.DDL(数据库定义语言):
数据库
创建:CREATE DATABASE <数据库名>
删除:DROP DATABASE <数据库名>
查看:①SHOW DATABASE -----查看服务中心所有的数据库
②SHOW CREATE DATABASE <数据库名>----查看数据库创建细节
选择:USE <数据库名>
数据表
创建:CREATE TABLE `T` (` ID` INT(11) NOT NULL AUTO_INCREMENT, `N_ID` INT(10) UNSIGNED NOT NULL ,`L1` INT(11) , DEFAULT NULL , PRIMARY KEY (`ID` , 'N_ID') , KEY)
修改表:
修改表名:
ALTER TABLE <原表名> RENAME TO|AS <新表名>
设计表编码:
ALTER TABLE <表名> CHARACTERSET<编码格式>
添加列ADD:
ALTER TABLE <表名> ADD <列名> VARCHAR(20)<约束条件>
修改Modify:
①ALTER TABLE <表名> MODIFY <列名> VARCHAR(20) AFTER<列名2>----放到某一列之后
②ALTER TABLE<表名> MODIFY<列名> VARCHAR(20) FIRST ----放到第一列
修改列名:
更换列的位置:ALTERTABLE <表名> CHANGE <原列名><新列名> VARCHAR(20)
删除列:
ALTER TABLE <表名> DROP COLUMN<列名>
删除:DROP TABLE<表名>
查看:
查看表结构:
DESC<表名>
DESCRIBE<表名>
SHOW COLUMNSF ROM<表名>
SHOW [FULL] FIELDS FROM<表名>
查看创建语句:
SHOW CREATE TABLE<表名>
2.DML(数据库操纵语言)
① . 添加记录:
INSERT INTO <表名> (filed1,filed2......)VALUES (VALUE1,VALUE2......)
INSERT INTO <表名> SELECT(E1,E2,E3) FROM TABLE WHERE.......
② . 修改记录:
UPDATE <表名> SET filed1 = new-value1, filed2 = new - value2 WHERE ......
③ . 删除记录:
DELETE FROM <表名> WHERE
下午
三、数据库操作(SQL)下
1、简单查询:
完整语法:SELECT * FROM <表名> WHERE 筛选条件 GROUP BY 分组字段1 ,分组字段2, HAVING 分组筛选条件 ORDER BY 排序字段1,排序字段2 LIMIT 起点,数量
2、字段筛选
SELECT......
3、AS别名
4、重复数据合并(查询结果去重)DISTINCT
5、条件筛选
比较运算:
①、不等于 <> !=
②、null值等于 <=>
③、大于、小于、等于、大于等于、小于等于
逻辑运算:
and or and和or同时使用 and的优先级更高 可以使用小括号控制顺序
空值判断:
is null \ is not null
存在判断:
exists \ not exists \ SELECT * FROM <表名> WHERE EXISTS (SELECT id FROM my WHERE id = 111)
包含in:
模糊查询like:通配符 _ %
any和all:
ALL运算符是一个逻辑运算符,它将单个值与子查询返回的单列值集进行比较。
ALL运算符是一个逻辑运算符,它将单个值与子查询返回的单列值集进行比较。
语法
ANY运算符
6、分组查询GROUP BY
①、聚合函数:
COUNT:
SELECT COUNT(*) FROM <表名> ----查询表中数据的行数
SELECT COUNT(列名)FROM <表名>----查询某一列中的个数 会忽略null值
MAX
返回指定列中的最大值
MIN
返回指定列中的最小值
SUM
返回指定列值的综合
如果在没有返回匹配行SELECT语句中使用SUM 则SUM会返回NULL 而不是0
SUM计算自动忽略NULL值
DISTINCT运算符允许计算集合中的不同值
SELECT SUM (DISTINCT <列名>) FROM <表名>
AVG
AVG()平均值
除COUNT函数外 其他会自动忽略NULL值
②、HAVING和GROUP配合使用
WHERE子句只能指定行的条件 而不能指定组的条件WHERE先过滤出行 然后GROUP BY 进行分组HAVING再进行过滤 筛选出需要的组
使用限制:能够使用的要素有三种 常数、聚合函数、聚合键 聚合键也是GROUP BY子句中指定的列名
7、排序 order by
正序ASC 倒叙 DESC
8、部分查询 LIMIT的分页应用
9、union联合查询
union ----默认去重
union all----不去重
10、多表联查
交叉连接 CROSS JOIN
SELECT * FROM <表名1>,<表名2> WHERE 连接条件
交叉连接返回的结果是被连接的两个表中所有数据行的笛卡尔积。需要注意的是,交叉连接产生的结果是笛卡尔积,并没有实际应用的意义。
内连接 INNER JOIN
SELECT * FROM <表名1> INNER JOIN <表名2> ON连接条件
外连接
左外连接:
SELECT * FROM <表名1> LEFT\OUTER JOIN<表名2> ON 连接条件
右外连接:SELECT * FROM <表1> RIGHT JOIN <表2> ON 连接条件
标签:数据库,笔记,20220720,----,TABLE,课堂,WHERE,连接,SELECT 来源: https://www.cnblogs.com/qq1078973635/p/16499830.html