mysql3小时

第一课

创建资料库

CREATE DATABASE   `database`;  

//1.分号必须有
2.指令大小写都可以
3.资料库名字可以不用加``,但是如果涉及到关键字就必须用。

展示资料库

show databases;

删除资料库

drop database `database`;

第二节

使用资料库

use `sql_tutorial`;

数据类型

int 整数
decimal(m,n) 有小数点的数 m代表有几位数 n是小数点占的位数
varchar(n) 字符串 n是最多存放的位数
blob (Binary Large Object)图片 影像 档案 …
date ‘YYYY-MM-DD’日期
timestamp ‘YYYY-MM-DD HH:MM:SS’记录时间

创建表格

CREATE table `stdunt`(`stdunt_id`    int   primary key,//可以写成   `stdunt_id`    int,primary key(`stdunt_id`)`name`       varchar(20), `major` varchar(20)
);

//括号里面为表格内容
foreign key 外键 关联多个表格 !!在第一个表格创建时不能设定
primary key 主键 设置成主键的属性对应的资料是唯一的 主键在声明是不能为空

alter table  `Employee`
add foreign key(`sup_id`)
references `employee`(`emp_id`)
on delete set null;    

//添加一个外键(某个表格某某某)对应摸某表格某某某

查看表格

DESCRIBE `stdunt`;
//运行后就会显示表格

删除表格

drop table `stdunt`;

新增一个属性(添加表格一行或者一列 不确定第一次学)

altert able   `stdunt`  
add   gpa decimal(3,2);

删除属性

alter table  `stdunt `  
drop colum gpa;

第三节 存入资料

添加资料

按顺序填写

INSERT INTO  `stdunt`  VALUES (1,`小白`,`历史`);

!!!如果已经写入会一直报错
//按顺序填写
字符串必须用’或者"包起来

INSERT INTO `stdunt` values(3,	'小绿', null);

// null 代表着空白

INSERT INTO `stdunt` (`name`,`major`,`stdunt_id`) values('小蓝','英语',4);!!报错

//
INSERT INTO stdunt(name,major,stdunt_id) values(‘小蓝’,‘英语’,4);
没有报错 可以运行 应该是中英文字符混了
!!!英文标号自动加黑
//自己决定输入顺序

//添加部分

INSERT INTO `stdunt`    (`major`,`stdunt_id`)   values   ('英语',5);

等同于

等同于

 INSERT INTO `stdunt`(`name`,`major`,`stdunt_id`) values(null,'英语',5);

搜寻资料

SELECT   *  FROM   `stdunt` ;

// * 代表全部 这是搜寻这个表的全部资料

第四节

constraints //限制,约束

CREATE TABLE student(
`student_id` INT PRIMARY KEY,
`name` VARCHAR(20) NOT NULL,   //(意思是这一列值不可以为空)
`major`VARCHAR(20) UNIQUE,     // (这一列值要是唯一的)
); 

//还可以写default表示预设
例:

CREATE TABLE student(
`student_id` INT PRIMARY KEY,
`name` VARCHAR(20) NOT NULL,   
`major`VARCHAR(20) DEFAULT '历史',  // (如果在新增资料时,没有声明 ”major“ 这个属性,就会变成预设值“历史”)
); 

CREATE TABLE student(
`student_id` INT auto_increment,//添加属性是不需要写,会直接自动加一
`name` VARCHAR(20) ,`major`VARCHAR(20) ,     	};

第五节 修改删除资料

SET SQL_SAFE_UPDATES=0;

//关闭自动更新
!!!关闭后才行

UPDATE  `stdunt`
SET	`major`  =  '英语文学'
WHERE     `major`  =  '英语';

//可以用 and or

不加 “WHERE”
例:

UPDATE  `stdunt`
SET	`major`  =  '英语文学'

结果:major 全部显示英语文学

删除资料

DELETE FROM `stdunt`
WHERE `stdunt_id`=4;

//stdunt_id=4的资料就删掉了

第六课 如何搜寻资料

SELECT `name` , `major`   FROM   `stdunt`;

//从stdunt的表格中取得这两样属性
全部都要就写 *

排序

SELECT * 
FROM   `stdunt`
ORDER BY `score`;

//把stdunt这个表格 按照’score’进行排序 把所有属性全取出来
这是由低到高
!!如果从高到低就在分号前加上DESC

限制传输资料

SELECT * 
FROM   `stdunt`
LIMIT 3;
//只传输前3个资料
//!!可以和排序条件判断一起用
//     在最后面

条件判断

SELECT * 
FROM   `stdunt`
WHERE `major`='英语';

//where是条件判断 判断major为英语的资料显示出来

两条语句相等

WHERE `major`='英语 OR  `major`='历史'  OR  `major`='化学' ;
WHERE `major` IN  ('英语,'历史','化学');

聚合函数

aggregate functions
select count(`xxx`)  from `xxx`;

取得xxx的属性在xxx的表格中有几笔资料

平均就把 count 换成 avg
sum 总和
max 最大
min 最小

wildcards 万用字源
% 代表多个字节
_ 代表一个字节

select *
from `xxx`
where `` like '%333';  

//选出尾号333的属性
// %333% 中间有333的

union 合集

两个搜寻中间加一个 union 就可以

​ 限制:前后属性数量要一致
​ 合并资料类型一样 不能一个整数一个字符串

join 连接

select *
from`xxx`
join `sss`
on `aaa` =`bbb`;

//将xxx的aaa和sss的bbb的属性连接并将表格全部显示
// left join 条件不成立 左边表格资料也能传输 但右边必须成立
​ right join 相反

子查询 subquery
查询语句中插入另一个查询语句 //套娃

on delete cascade //右边对应不上左边就把删掉
on delete set null //把左边置为null

​ 限制:前后属性数量要一致
​ 合并资料类型一样 不能一个整数一个字符串

join 连接

select *
from`xxx`
join `sss`
on `aaa` =`bbb`;

//将xxx的aaa和sss的bbb的属性连接并将表格全部显示
// left join 条件不成立 左边表格资料也能传输 但右边必须成立
​ right join 相反

子查询 subquery
查询语句中插入另一个查询语句 //套娃

on delete cascade //右边对应不上左边就把删掉
on delete set null //把左边置为null

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

相关推荐

  1. node之mysql篇经典八小时

    2024-03-27 10:20:01       64 阅读
  2. MySQLMySQL小结

    2024-03-27 10:20:01       36 阅读
  3. 【Python 48小时速成 3】输入与输出

    2024-03-27 10:20:01       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-27 10:20:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-27 10:20:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-27 10:20:01       82 阅读
  4. Python语言-面向对象

    2024-03-27 10:20:01       91 阅读

热门阅读

  1. 握手和挥手

    2024-03-27 10:20:01       39 阅读
  2. npm常用命令详解

    2024-03-27 10:20:01       39 阅读
  3. Excel 导入、导出的封装

    2024-03-27 10:20:01       37 阅读
  4. 【go-工具】pprof

    2024-03-27 10:20:01       34 阅读
  5. 如何获取iOS手机上的APP崩溃日志?

    2024-03-27 10:20:01       34 阅读
  6. 22套软件研发文档模板下载(实用版)

    2024-03-27 10:20:01       40 阅读
  7. 【vue】computed和watch的区别和应用场景

    2024-03-27 10:20:01       43 阅读
  8. 机器学习:智能时代的核心引擎

    2024-03-27 10:20:01       45 阅读