From 497666ba4cf5618e8569ee10f37bb2e9c81cd627 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6?= <1531071679@qq.com> Date: Fri, 18 Oct 2024 02:35:56 +0000 Subject: [PATCH 1/5] =?UTF-8?q?=E6=96=B0=E5=BB=BA=2020241018=E7=B4=A2?= =?UTF-8?q?=E5=BC=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20241018\347\264\242\345\274\225/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" diff --git "a/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From 208237d57c2a68a1407c95bbffd2c0d8b0bd1fd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6?= <1531071679@qq.com> Date: Fri, 18 Oct 2024 02:36:22 +0000 Subject: [PATCH 2/5] 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 卢比伦 <1531071679@qq.com> --- ...\240\344\270\216\344\275\234\344\270\232.md" | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 "\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\347\264\242\345\274\225\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" diff --git "a/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\347\264\242\345\274\225\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\347\264\242\345\274\225\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" new file mode 100644 index 0000000..071a053 --- /dev/null +++ "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\347\264\242\345\274\225\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" @@ -0,0 +1,17 @@ +```sql +-- 练习和作业 +-- 1.给emp分别建立 普通索引和唯一索引 +-- 2.查询emp表有哪些索引 +-- 3. 使用有索引的字段进行查询,再查看这条语句是否使用到了索引。 +-- 4. 删除前面建立的两个索引 +-- 5. 选择两个字段添加一个复合索引 +-- 6. 使用复合索引的字段进行查询 +-- 作业 +-- 想办法用自己的电脑,生成500万行数据,id,uname,age 尽量随机,并记录时间。 +-- 1. 不用索引查询 一次姓名uname /并记录时间 +-- 2. 建立索引查询 一次姓名uname /并记录时间 + +``` + + + -- Gitee From 62cf2202c4e5f97608ba86d9db679900eb1e9b27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6?= <1531071679@qq.com> Date: Fri, 18 Oct 2024 03:34:46 +0000 Subject: [PATCH 3/5] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6/20241018=E7=B4=A2=E5=BC=95/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20241018\347\264\242\345\274\225/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" diff --git "a/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee From 0a248768c22c1ad03e6e53627d145c06df6e6ceb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6?= <1531071679@qq.com> Date: Fri, 18 Oct 2024 03:34:55 +0000 Subject: [PATCH 4/5] 2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 卢比伦 <1531071679@qq.com> --- ...55\347\232\204\351\227\256\351\242\230.md" | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 "\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\344\275\234\344\270\232\344\270\255\347\232\204\351\227\256\351\242\230.md" diff --git "a/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\344\275\234\344\270\232\344\270\255\347\232\204\351\227\256\351\242\230.md" "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\344\275\234\344\270\232\344\270\255\347\232\204\351\227\256\351\242\230.md" new file mode 100644 index 0000000..1d45537 --- /dev/null +++ "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\344\275\234\344\270\232\344\270\255\347\232\204\351\227\256\351\242\230.md" @@ -0,0 +1,66 @@ +```sql +(CONCAT('user_', LPAD(FLOOR(RAND() * 90) + 10, 2, '0'))的含义 + +表达式 `(CONCAT('user_', LPAD(FLOOR(RAND() * 90) + 10, 2, '0'))` 的作用是生成一个随机的两位数用户名,格式为 `user_10` 到 `user_99`。让我们分解这个表达式来理解它是如何工作的: + +1. **`RAND()` 函数**: + - `RAND()` 函数生成一个0到1之间的随机小数(不包括1)。 +2. **`FLOOR(RAND() \* 90)`**: + - 将 `RAND()` 函数的结果乘以90,将可能的值的范围扩展到0到90之间(不包括90)。 + - `FLOOR()` 函数取小于或等于给定数字的最大整数,这将结果四舍五入到最近的整数,得到一个0到89之间的整数。 +3. **`FLOOR(RAND() \* 90) + 10`**: + - 将10加到 `FLOOR(RAND() * 90)` 的结果上,将范围从0到89向上移动到10到99。 +4. **`LPAD(FLOOR(RAND() \* 90) + 10, 2, '0')`**: + - `LPAD()` 函数用于在字符串的左侧填充字符,直到达到指定的长度。 + - 在这里,它将 `FLOOR(RAND() * 90) + 10` 的结果(一个介于10到99之间的整数)填充到左侧,使其成为一个两位数的字符串。如果数字不足两位数(即10到19),则在左侧补零,使其成为 `01` 到 `99` 的格式。 +5. **`CONCAT('user_', LPAD(FLOOR(RAND() \* 90) + 10, 2, '0'))`**: + - `CONCAT()` 函数用于连接字符串。 + - 在这里,它将 `'user_'` 字符串与 `LPAD()` 函数的结果连接起来,生成最终的用户名,如 `user_10` 到 `user_99`。 + +因此,整个表达式 `CONCAT('user_', LPAD(FLOOR(RAND() * 90) + 10, 2, '0'))` 生成一个格式为 `user_10` 到 `user_99` 的随机用户名。 + +例如: + +- 如果 `RAND()` 返回0.5,那么 `RAND() * 90` 将返回45。 +- `FLOOR(45)` 将返回45。 +- `45 + 10` 将返回55。 +- `LPAD(55, 2, '0')` 将返回 `55`(因为55已经是两位数)。 +- 最终,`CONCAT('user_', '55')` 将返回 `user_55`。 + +所以,最终结果是 `user_55`,这是一个随机生成的两位数用户名。 + + + + +``` + + + +```sql +建立索引(index) (length可加可不加){复合索引则是后面+(字段名1,字段名2)} + +create index +索引名字 + on table_name(字段名+(length)) + +建立唯一索引 + +create unique index +索引名字 + on table_name(字段名+(length)) + +查看是否有用到索引语句 + +explain + sql语句 + +(explain +select * from table_name +where +条件) + +删除索引 + +drop index 索引名字 on table_name; + +查看表格索引 + +show index from table_name + +复合查询 + +explain sql 语句(where 1字段名='' and 字段名2='') +``` + -- Gitee From cda674b53ca929286e2cb62d4fa7d7f31150461a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=A2=E6=AF=94=E4=BC=A6?= <1531071679@qq.com> Date: Fri, 18 Oct 2024 03:36:06 +0000 Subject: [PATCH 5/5] 3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 卢比伦 <1531071679@qq.com> --- ...14\346\210\220\344\275\234\344\270\232.md" | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 "\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\345\256\214\346\210\220\344\275\234\344\270\232.md" diff --git "a/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\345\256\214\346\210\220\344\275\234\344\270\232.md" "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\345\256\214\346\210\220\344\275\234\344\270\232.md" new file mode 100644 index 0000000..841d69b --- /dev/null +++ "b/\345\215\242\346\257\224\344\274\246/20241018\347\264\242\345\274\225/\345\256\214\346\210\220\344\275\234\344\270\232.md" @@ -0,0 +1,53 @@ +```sql +-- 练习和作业 +-- 1.给emp分别建立 普通索引和唯一索引 +CREATE INDEX index_ename ON employee(ename(20)); +CREATE UNIQUE INDEX uindex_ename ON employee(ename(20)); + +-- 2.查询emp表有哪些索引 +show INDEX from employee; +-- 3. 使用有索引的字段进行查询,再查看这条语句是否使用到了索引。 +EXPLAIN SELECT * FROM employee WHERE ename='傅嘉熙'; +-- 4. 删除前面建立的两个索引 +drop INDEX index_ename on employee; +drop index uindex_ename on employee; +-- 5. 选择两个字段添加一个复合索引 +CREATE INDEX index_ename_dname ON employee(ename, dname); +-- 6. 使用复合索引的字段进行查询 +EXPLAIN SELECT * from employee WHERE ename='傅嘉熙' and dname='开发部'; +-- 作业 +-- 想办法用自己的电脑,生成500万行数据,id,uname,age 尽量随机,并记录时间。 +-- 1. 不用索引查询 一次姓名uname /并记录时间 +CREATE table nani( +id int PRIMARY key auto_increment, +uname VARCHAR(255), +age int +); +CREATE PROCEDURE yeah() +BEGIN +DECLARE i int DEFAULT 0 +while i <5000000 +do INSERT into nani(uname,age) +VALUES ((FLOOR(RAND() * 90) + 10,(FLOOR(RAND() * 90) + 10);) +set i=i+1; +end while ; +end +DELIMITER $$ + +CREATE PROCEDURE yeah() +BEGIN + DECLARE i INT DEFAULT 0; + WHILE i < 5000000 DO + INSERT INTO nani (uname, age) + VALUES (CONCAT('user_', LPAD(FLOOR(RAND() * 90) + 10, 2, '0')), FLOOR(RAND() * 90) + 10); + SET i = i + 1; + END WHILE; +END$$ + +DELIMITER ; +CALL yeah() +-- 2. 建立索引查询 一次姓名uname /并记录时间 + + +``` + -- Gitee