MySQL学习
- 前言
- 一、MySQL的安装和运行
- 二、Navicat的下载和安装
- 三、导入,查看数据等
- 四、SQL主要命令类型
- 1.DQL数据查询语言
- 2.DML数据操作语言
- 3.DDL数据定义语言
- 4.DCL数据控制语言
- 5.存储过程
前言
为了对数据进行更方便的处理,进行MySQL的初步认识和学习。
一、MySQL的安装和运行
在官网进行下载即可,运行时,出现:
这时候使用管理员身份可以打开(ctrl + S -> cmd ->‘右键’->’使用管理员身份运行‘)。或者,在开始菜单中直接打开
输入密码后可以操作,
SHOW DATABASES ;` -- 展示所有数据库
USE [dbname]; -- 使用某个数据库
CREATE DATABASE sqllearning; -- 创建一个数据库
后面一定要记得加分号
二、Navicat的下载和安装
Navicat找破解版下载,激活后就可以使用了
下面就可以开始正式学习
三、导入,查看数据等
使用Navicat中的’‘导入向导’'进行数据导入。
四、SQL主要命令类型
1.DQL数据查询语言
单表查询
SELECT 列 FROM 表; -- 二维表
-- *为常数 四则运算都可以
DISTINCT CONCAT CONCAT_WS
AS 别名
ORDER BY 列 ASC / DESC; -- 就近原则
WHERE 过滤条件 ; -- 在SELECT 之后
-- 列 > = < !=
BETWEEN...AND...
IN
IS NULL
IS NOT NULL
CONVERT(...USING gbk ) -- 文本类型编码处理
LIKE _% -- 模糊查询
AND OR -- 多条件过程
聚合函数 (注意NULL值处理)
COUNT()
SUM()
AVG()
MAX()
MIN()
GROUP BY 列(聚合键);
SELECT 聚合键,聚合函数 FROM 表 ;
HAVING -- (筛选)聚合函数 > = < !=
SELECT ...FROM...WHERE...GROUP BY...HAVING...ORDER BY...
数据类型:
数值型:INT ,DECIMAL,FLOAT
ABS() ,ROUND(),
文本型: CHAR ,VARCHAR
LENGTH() , CHAR_LENGTH() , RTPIM() ,LTRIM() , UPPER(), LOWER()
日期型:DATE,TIME ,DATETIME
YEAR() ,HOUR() , MONTH() ,MONTHNAME()
NOW() ,CURDATE() ,CURTIME(),DATE_SUB(),DATE_ADD()
多表查询
子查询
标量子查询 : 用法和常数一样
关联子查询 : 组内使用常数 WHERE 在子句内
普通子查询 : 返回一整列 : IN ; 返回二维表(可以作为新的检索表)联结(列)
内联结 : 自联结:INNER JOIN ... ON
外联结 :LEFT/RIGHT/FULL OUTER JOIN...ON...
组合(行)
UNION
UNION ALL
(不去重)
2.DML数据操作语言
增删改
插入
INSERT INTO 表( , , ) VALUES ( , , );
INSERT INTO 表( , , ) SELECT 列 FROM 表;
注意: NULL的处理
更新
UPDATE 表
SET 字段 = 常数、NULL
WHERE 过滤条件 ;
删除
DELETE FROM 表
WHERE ....;`
TRUNCATE TABLE 表 ;
3.DDL数据定义语言
创建
CREATE TABLE 表
(
字段 数据类型 字段属性 ;
...
);
复制表
CREATE TABLE 表
AS
SELECT 列 FROM 表;
重命名
RENAME TABLE 表 TO 新表名 ;
修改
ALTER TABLE
ADD 字段 数据类型 字段属性 ;
DROP 字段,DROP 字段;
DROP COLUMN 字段;
MODIFY COLUMN 字段 数据类型 字段属性 ;
删除
DROP TABLE 表名;
新建&删除视图
CREATE VIEW 视图名
AS
SELECT 列 FROM 表; -- 新建
DROP VIEW 视图名 --删除
4.DCL数据控制语言
COMMIT; -- 提交
ROLLBACK (TO SAVEPOINT 备份点); --回滚
SAVEPOINT; --保留(备份)点
RELEASE SAVEPOINT 保留点名; -- 释放xx保留点
5.存储过程
PROCEDURE
BEGIN END
CALL