MySQL 每周总结(4周)

索引实例

MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度

CREATE DATABASE  IF NOT EXISTS info DEFAULT CHARSET utf8;
USE info;
CREATE TABLE IF NOT EXISTS emp (
    emp_id INT PRIMARY KEY AUTO_INCREMENT,
    emp_name VARCHAR(20),
    salary INT,
    dept_id INT,
    manager_id INT
);
INSERT INTO emp(emp_name,salary,dept_id,manager_id)VALUES
("tom",15000,1,NULL),
("lucy",1600,2,NULL),
("morty",14000,5,NULL),
("张建华",4000,1,1),
("李华",6000,1,1),
("孙思秒",3000,1,1),
("王强",6000,2,2),
("周杰",5000,2,2),
("曹光思",7000,5,3),
("刘毅真",8000,5,3),
("孙岩",5000,5,3);

#查询工资比王强高的人
SELECT * FROM emp WHERE salary >(SELECT salary FROM emp WHERE emp_name="王强")
#
SELECT * FROM emp WHERE dept_id = (SELECT dept_id FROM emp WHERE emp_name="张建国")
AND salary > (SELECT salary FROM emp WHERE emp_name = "孙岩");

#多值
#查询姓孙员工所在部门的全部员工信息
SELECT *FROM emp WHERE dept_id IN (SELECT dept_id FROM emp WHERE emp_name LIKE "孙%");

#创建索引:单独创建索引
CREATE INDEX index_name ON emp (emp_name);
SELECT * FROM emp WHERE emp_name = "父";
#创建索引:修改表结构的方式添加索引
ALTER TABLE emp ADD INDEX index_salary(salary);
#创建索引:创建表时,创建索引
CREATE TABLE IF NOT EXISTS srticle(id INT NOT NULL AUTO_INCREMENT,
title VARCHAR(20),
content VARCHAR(50),
dt DATE,
PRIMARY KEY(id),
INDEX index_title (title)
);
#删除索引
DROP INDEX index_name ON emp;
#唯一索引:列的值必须唯一
DROP UNIQUE INDEX index_name ON emp(emp_name);
#单独创建    组合索引
CREATE INDEX index_ct ON article(contennt,dt);
SELECT * FROM article WHERE content = "123" AND dt = "2020-10-10";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值