diff --git "a/40 \351\237\251\351\234\207\346\264\213/20230213 \345\256\211\350\243\205\344\273\245\345\217\212\344\272\206\350\247\243mysql.md" "b/40 \351\237\251\351\234\207\346\264\213/20230213 \345\256\211\350\243\205\344\273\245\345\217\212\344\272\206\350\247\243mysql.md" new file mode 100644 index 0000000000000000000000000000000000000000..eeaa9815b1ede5b328864ea08b69e8857a31129e --- /dev/null +++ "b/40 \351\237\251\351\234\207\346\264\213/20230213 \345\256\211\350\243\205\344\273\245\345\217\212\344\272\206\350\247\243mysql.md" @@ -0,0 +1,28 @@ +# 1笔记 + +数据库是什么? + +存储数据的地方 + +DB:数据库(Database) + +DBMS:数据库管理系统 ( DataBase Management System ) + +SQL是结构化查询语言(Structure Query Language) + +## 如何安装mysql + + + +## 如何打开MySQL + +方式一:MySQL自带客户端 + +开始菜单==》所有程序==》MySQL==》MySQL Server 5.7==》MySQL 5.7 Command Line Client + +方法二:使用cmd命令连接 + +**mysql -h 主机名 -P 端口号 -u 用户名 -p密码** + +方式三: 使用第三方工具navicat连接 + diff --git "a/40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213 20230221 \346\225\260\346\215\256\347\261\273\345\236\213\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" "b/40 \351\237\251\351\234\207\346\264\213/20230215 \346\225\260\346\215\256\347\261\273\345\236\213\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" similarity index 100% rename from "40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213 20230221 \346\225\260\346\215\256\347\261\273\345\236\213\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" rename to "40 \351\237\251\351\234\207\346\264\213/20230215 \346\225\260\346\215\256\347\261\273\345\236\213\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" diff --git "a/40 \351\237\251\351\234\207\346\264\213/20230216 DDL\345\222\214DML.md" "b/40 \351\237\251\351\234\207\346\264\213/20230216 DDL\345\222\214DML.md" new file mode 100644 index 0000000000000000000000000000000000000000..760c89931b5f522cd1589134170307aa1026ec54 --- /dev/null +++ "b/40 \351\237\251\351\234\207\346\264\213/20230216 DDL\345\222\214DML.md" @@ -0,0 +1,214 @@ +# 1笔记 + +创建库 create database 库名 charset utf 8 +移动字段 alter table 表名 modify 段名1 数据类型 after 段名2(移动到段名2后面) +重命名字段 alter table 表名 change 段名 新段名 数据类型 +重命名表 alter table 表名 rename to 新表名 +删字段 alter table 表名 drop 段名 +更改段内容 update 表名 set 更改内容 where 条件 +删内容 delete from 表名 where 条件 +date类型需要'' + +# 2作业 + +````mysql +第一题 +1、创建数据库test01_market +create database test01_market charser utf8; +2、创建表格customers +use test01_market; +create table customers; + +| 字段名 | 数据类型 | +| --------- | ----------- | +| c_num | int(11) | +| c_name | varchar(50) | +| c_contact | varchar(50) | +| c_city | varchar(50) | +| c_birth | date | + +**要求3:**将c_contact字段移动到c_birth字段后面 +alter table customers modify c_contact varchar(50) after c_birth; +**要求4:**将c_name字段数据类型改为 varchar(70) +alter table customers modify c_name varchar(70); +**要求5:**将c_contact字段改名为c_phone +alter table customers change c_contact c_phone varchar(50); +**要求6:**增加c_gender字段到c_name后面,数据类型为char(1) +alter table customers add c_gender char(1); +alter table customers modify c_gender char(1) after c_name; +**要求7:**将表名改为customers_info +alter table customers rename to customers_info; +**要求8:**删除字段c_city +alter table customers_info drop c_city; +第二题 +create database test02_library charset utf8; +use test02_library; +1) 指定所有字段名称插入第一条记录 +insert into books (b_id,b_name,authors,price,pubdate,note,num) values (1,'Tal of AAA','Dickes',23,1995,'novel',11); +select * from books; +2)不指定字段名称插入第二记录 +insert into books values (2,'EmmaT','Jane lura',35,1993,'joke',22); +3)同时插入多条记录(剩下的所有记录) +insert into books values (3,'Story of Jane','Jane Tim',40,2001,'novel',0),(4,'Lovey Day','George Byron',20,2005,'novel',30),(5,'Old land','Honore Blade',30,2010,'law',0),(6,'The Battle','Upton Sara',30,1999,'medicine',40),(7,'Rose Hood','Richard haggard',28,2008,'cartoon',28); +| b_id | b_name | authors | price | pubdate | note | num | +| ---- | ------------- | --------------- | ----- | ------- | -------- | ---- | +| 1 | Tal of AAA | Dickes | 23 | 1995 | novel | 11 | +| 2 | EmmaT | Jane lura | 35 | 1993 | joke | 22 | +| 3 | Story of Jane | Jane Tim | 40 | 2001 | novel | 0 | +| 4 | Lovey Day | George Byron | 20 | 2005 | novel | 30 | +| 5 | Old land | Honore Blade | 30 | 2010 | law | 0 | +| 6 | The Battle | Upton Sara | 30 | 1999 | medicine | 40 | +| 7 | Rose Hood | Richard haggard | 28 | 2008 | cartoon | 28 | + +4、将小说类型(novel)的书的价格都增加5。 +update books set price = price + 5 where note ='novel'; +5、将名称为EmmaT的书的价格改为40。 +update books set price = 40 where b_name ='EmmaT'; +6、删除库存为0的记录 +delete from books where num = 0; +```mysql + +``` +第三题 +## 第3题 + +-- 1、创建数据库test03_bookstore +create database test03_bookstore charset utf8; +-- 2、创建book表 +use test03_bookstore; +create table book ( +id int, +title varchar(100), +author varchar(100), +price double(11,2), +sales int, +stock int, +img_path varchar(100) +); +-- ```mysql +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | title | varchar(100) | NO | | NULL | | +-- | author | varchar(100) | NO | | NULL | | +-- | price | double(11,2) | NO | | NULL | | +-- | sales | int(11) | NO | | NULL | | +-- | stock | int(11) | NO | | NULL | | +-- | img_path | varchar(100) | NO | | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ +-- ``` +-- +-- 尝试添加部分模拟数据,参考示例如下: +insert into book values (1,'解忧杂货店','东野圭吾',27.20,102,98,'upload/books/解忧杂货店.jpg'); +insert into book values (2,'边城','沈从文',23.00,102,98,'upload/books/边城.jpg'); +-- ```mysql +-- +----+-------------+------------+-------+-------+-------+----------------------------+ +-- | id | title | author | price | sales | stock | img_path | +-- +----+-------------+------------+-------+-------+-------+-----------------------------+ +-- | 1 | 解忧杂货店 | 东野圭吾 | 27.20 | 102 | 98 | upload/books/解忧杂货店.jpg | +-- | 2 | 边城 | 沈从文 | 23.00 | 102 | 98 | upload/books/边城.jpg | +-- +----+---------------+------------+-------+-------+-------+----------------------------+ +-- ``` +-- +-- 3、创建用户表users,并插入数据 +use test03_bookstore; +create table users( +id int, +username varchar(100), +password varchar(100), +email varchar(100) +); +-- ```mysql +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | username | varchar(100) | NO | UNI | NULL | | +-- | password | varchar(100) | NO | | NULL | | +-- | email | varchar(100) | YES | | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ +-- ``` +-- +-- 尝试添加部分模拟数据,参考示例如下: +insert into users values(1,'admin','112233','admin@mxdx.com'); +-- ```mysql +-- +----+----------+----------------------------------+--------------------+ +-- | id | username | password | email | +-- +----+----------+----------------------------------+--------------------+ +-- | 1 | admin | 112233 | admin@mxdx.com | +-- +----+----------+----------------------------------+--------------------+ +-- ``` +-- +-- 4、创建订单表orders +create table orders( +id varchar(100), +order_time datetime, +total_count int, +total_amount double(11,2), +state int, +user_id int +); +-- ```mysql +-- +--------------+--------------+------+-----+---------+-------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +--------------+--------------+------+-----+---------+-------+ +-- | id | varchar(100) | NO | PRI | NULL | | +-- | order_time | datetime | NO | | NULL | | +-- | total_count | int(11) | NO | | NULL | | +-- | total_amount | double(11,2) | NO | | NULL | | +-- | state | int(11) | NO | | NULL | | +-- | user_id | int(11) | NO | MUL | NULL | | +-- +--------------+--------------+------+-----+---------+-------+ +-- ``` +-- +-- 尝试添加部分模拟数据,参考示例如下: +insert into orders values('15294258455691','2018-06-20 00:30:45',2,50.20,0,1); +-- ```mysql +-- +----------------+---------------------+-------------+--------------+-------+---------+ +-- | id | order_time | total_count | total_amount | state | user_id | +-- +----------------+---------------------+-------------+--------------+-------+---------+ +-- | 15294258455691 | 2018-06-20 00:30:45 | 2 | 50.20 | 0 | 1 | +-- +----------------+---------------------+-------------+--------------+-------+---------+ +-- ``` +-- +-- 5、创建订单明细表order_items +create table order_items( +id int, +count int, +amount double(11,2), +title varchar(100), +author varchar(100), +price double(11,2), +img_path varchar(100), +order_id varchar(100) +); +-- ```mysql +-- +----------+--------------+------+-----+---------+----------------+ +-- | Field | Type | Null | Key | Default | Extra | +-- +----------+--------------+------+-----+---------+----------------+ +-- | id | int(11) | NO | PRI | NULL | auto_increment | +-- | count | int(11) | NO | | NULL | | +-- | amount | double(11,2) | NO | | NULL | | +-- | title | varchar(100) | NO | | NULL | | +-- | author | varchar(100) | NO | | NULL | | +-- | price | double(11,2) | NO | | NULL | | +-- | img_path | varchar(100) | NO | | NULL | | +-- | order_id | varchar(100) | NO | MUL | NULL | | +-- +----------+--------------+------+-----+---------+----------------+ +-- ``` +-- +-- 尝试添加部分模拟数据,参考示例如下: +insert into order_items values(1,1,27.20,'解忧杂货店','东野圭吾',27.20,'static/img/default.jpg','15294258455691'); +insert into order_items values(2,1,23.00,'边城','沈从文',23.00,'static/img/default.jpg','15294258455691'); +-- ```mysql +-- +----+-------+--------+---------+---------+-------+----------------+----------------+ +-- | id |count| amount| title | author | price | img_path | order_id | +-- +----+-------+--------+------------+----------+-------+----------------+----------------+ +-- | 1 | 1 | 27.20| 解忧杂货店 | 东野圭吾 | 27.20 | static/img/default.jpg|15294258455691 | +-- | 2 | 1 | 23.00| 边城 | 沈从文 | 23.00 | static/img/default.jpg|15294258455691 | +-- +----+-------+--------+------------+----------+-------+------------+----------------+ +```` + + + diff --git "a/40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213-20230220 \347\272\246\346\235\237\347\232\204\345\255\246\344\271\240\344\270\216\344\275\234\344\270\232.md" "b/40 \351\237\251\351\234\207\346\264\213/20230220 \347\272\246\346\235\237\347\232\204\345\255\246\344\271\240\344\270\216\344\275\234\344\270\232.md" similarity index 100% rename from "40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213-20230220 \347\272\246\346\235\237\347\232\204\345\255\246\344\271\240\344\270\216\344\275\234\344\270\232.md" rename to "40 \351\237\251\351\234\207\346\264\213/20230220 \347\272\246\346\235\237\347\232\204\345\255\246\344\271\240\344\270\216\344\275\234\344\270\232.md" diff --git "a/40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213 20230222 select\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" "b/40 \351\237\251\351\234\207\346\264\213/20230222 select\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" similarity index 100% rename from "40 \351\237\251\351\234\207\346\264\213/40 \351\237\251\351\234\207\346\264\213 20230222 select\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" rename to "40 \351\237\251\351\234\207\346\264\213/20230222 select\344\275\234\344\270\232\344\270\216\347\254\224\350\256\260.md" diff --git "a/40 \351\237\251\351\234\207\346\264\213/20230223 \345\207\275\346\225\260\347\254\224\350\256\260\351\242\204\344\271\240.md" "b/40 \351\237\251\351\234\207\346\264\213/20230223 \345\207\275\346\225\260\347\254\224\350\256\260\351\242\204\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..037b74ce87ba379a9080e2625b8e9116aa209563 --- /dev/null +++ "b/40 \351\237\251\351\234\207\346\264\213/20230223 \345\207\275\346\225\260\347\254\224\350\256\260\351\242\204\344\271\240.md" @@ -0,0 +1,35 @@ +# 笔记 + +## 1.分组函数 + +avg() 求平均 + +sum() 求和 + +max()求最大值 + +min() 求最小值 + +count() 统计 + +```mysql +#演示分组函数如何使用 + #从table中查询salary平均值 + select avg(salary) from table; + #从table中查询salary的和 + select sum(salary) from table; + #从table中查询salary的最大值 + select max(salary) from table; + #从table中查询salary的最小值 + select min(salary) from table;; + #从talbe中查询salary的统计数 + select count(salary) from table; + +``` + +## 2.单行函数 + +## 3.数学函数 + + +