动力节点 mysql 郭鑫 34道经典的面试题
DROP TABLE IF EXISTS `dept`; CREATE TABLE `dept` (`DEPTNO` int(2) NOT NULL COMMENT '部门编号',`DNAME` varchar(14) DEFAULT NULL COMMENT '部门名称',`LOC` varchar(13) DEFAULT NULL COMMENT '位置',PRIMARY KEY (`DEPTNO`) ) ENGINE=InnoDB;
INSERT INTO `dept` VALUES ('10', 'ACCOUNTING', 'NEW YORK'); INSERT INTO `dept` VALUES ('20', 'RESEARCH', 'DALLAS'); INSERT INTO `dept` VALUES ('30', 'SALES', 'CHICAGO'); INSERT INTO `dept` VALUES ('40', 'OPERATIONS', 'BOSTON');
创建员工表
DROP TABLE IF EXISTS `emp`; CREATE TABLE `emp` (`EMPNO` int(4) NOT NULL COMMENT '员工编号',`ENAME` varchar(10) DEFAULT NULL COMMENT '员工姓名',`JOB` varchar(9) DEFAULT NULL COMMENT '工作岗位',`MGR` int(4) DEFAULT NULL COMMENT '上级经理',`HIREDATE` date DEFAULT NULL,`SAL` double(7,2) DEFAULT NULL,`COMM` double(7,2) DEFAULT NULL,`DEPTNO` int(2) DEFAULT NULL,PRIMARY KEY (`EMPNO`),KEY `DEPTNO` (`DEPTNO`),KEY `SAL` (`SAL`),CONSTRAINT `emp_ibfk_1` FOREIGN KEY (`DEPTNO`) REFERENCES `dept` (`DEPTNO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='员工编号';
插入语句:
INSERT INTO `emp` VALUES ('7369', 'SMITH', 'CLERK', '7902', '1980-12-17', '800.00', null, '20'); INSERT INTO `emp` VALUES ('7499', 'ALLEN', 'SALESMAN', '7698', '1981-02-20', '1600.00', '300.00', '30'); INSERT INTO `emp` VALUES ('7521', 'WARD', 'SALESMAN', '7698', '1981-02-22', '1250.00', '500.00', '30'); INSERT INTO `emp` VALUES ('7566', 'JONES', 'MANAGER', '7839', '1981-04-02', '2975.00', null, '20'); INSERT INTO `emp` VALUES ('7654', 'MARTIN', 'SALESMAN', '7698', '1981-09-28', '1250.00', '1400.00', '30'); INSERT INTO `emp` VALUES ('7698', 'BLAKE', 'MANAGER', '7839', '1981-05-01', '2850.00', null, '30'); INSERT INTO `emp` VALUES ('7782', 'CLARK', 'MANAGER', '7839', '1981-06-09', '2450.00', null, '10'); INSERT INTO `emp` VALUES ('7788', 'SCOTT', 'ANALYST', '7566', '1987-04-19', '3000.00', null, '20'); INSERT INTO `emp` VALUES ('7839', 'KING', 'PRESIDENT', null, '1981-11-17', '5000.00', null, '10'); INSERT INTO `emp` VALUES ('7844', 'TURNER', 'SALESMAN', '7698', '1981-09-08', '1500.00', '0.00', '30'); INSERT INTO `emp` VALUES ('7876', 'ADAMS', 'CLERK', '7788', '1981-05-23', '1100.00', null, '20'); INSERT INTO `emp` VALUES ('7900', 'JAMES', 'CLERK', '7698', '1981-12-03', '950.00', null, '30'); INSERT INTO `emp` VALUES ('7902', 'FORD', 'ANALYST', '7566', '1981-12-03', '3000.00', null, '20'); INSERT INTO `emp` VALUES ('7934', 'MILLER', 'CLERK', '7782', '1982-01-23', '1300.00', null, '10');
C:薪水等级表
1,建表语句
DROP TABLE IF EXISTS `salgrade`; CREATE TABLE `salgrade` (`GRADE` int(11) DEFAULT NULL,`LOSAL` int(11) DEFAULT NULL,`HISAL` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `salgrade` VALUES ('1', '700', '1200'); INSERT INTO `salgrade` VALUES ('2', '1201', '1400'); INSERT INTO `salgrade` VALUES ('3', '1401', '2000'); INSERT INTO `salgrade` VALUES ('4', '2001', '3000'); INSERT INTO `salgrade` VALUES ('5', '3001', '9999');
表的结构如下所示:
1.取得每个部门最高薪水的人员名称
第一步:求出每个部门的最高薪水 selecte.deptno,max(e.sal) as maxsal fromemp e group bye.deptno; +--------+---------+ | deptno | maxsal | +--------+---------+ | 10 | 5000.00 | | 20 | 3000.00 | | 30 | 2850.00 | +--------+---------+ 将以上查询结果当成一个临时表t(deptno,maxsal) select e.deptno,e.ename,t.maxsal,e.sal from(selecte.deptno,max(e.sal) as maxsalfromemp egroup bye.deptno)t joinemp e ont.deptno = e.deptno wheret.maxsal = e.sal order bye.deptno; +--------+-------+---------+---------+ | deptno | ename | maxsal | sal | +--------+-------+---------+---------+ | 10 | KING | 5000.00 | 5000.00 | | 20 | SCOTT | 3000.00 | 3000.00 | | 20 | FORD | 3000.00 | 3000.00 | | 30 | BLAKE | 2850.00 | 2850.00 | +--------+-------+---------+---------+
分析下:
首先group by 首先经常和聚合函数max等配合使用,第二使用了group by 在select后面的查询字段只能是group by 后面指定的字段不能是其他字段
第三:join on 条件中 on 和where的却别,不清楚的看自己的博客
MYSQL LEFT JOIN操作中 ON与WHERE放置条件的区别
on是两个表联合查询连接起来生成一个临时表,where是在生成临时表的基础上,对生成的临时表进行条件帅选
t.deptno = e.deptno 表示两个表生成临时表的关系是 emp表中的部门编号必须等于 t表中的部门编号where之后的条件是:emp表和t表已经生成了临时表,然后对临时表进行条件过滤 2.哪些人的薪水在部门平均薪水之上
2.哪些人的薪水在部门平均薪水之上 第一步:求出每个部门的平均薪水 selecte.deptno,avg(e.sal) as avgsal fromemp e group by e.deptno; +--------+-------------+ | deptno | avgsal | +--------+-------------+ | 10 | 2916.666667 | | 20 | 2175.000000 | | 30 | 1566.666667 | +--------+-------------+ 将以上查询结果当成临时表t(deptno,avgsal)selectt.deptno,e.ename from(selecte.deptno,avg(e.sal) as avgsalfromemp egroup by e.deptno) t joinemp e one.deptno = t.deptno wheree.sal > t.avgsal; +--------+-------+ | deptno | ename | +--------+-------+ | 30 | ALLEN | | 20 | JONES | | 30 | BLAKE | | 20 | SCOTT | | 10 | KING | | 20 | FORD | +--------+-------+
3.取得部门中(所有人的)平均薪水等级
第一种情况:emp表中按照部门进行分组,求出每个组的平均工资,看每个组的平均工资属于那个等级
第一步:求出部门的平均薪水 selecte.deptno,avg(e.sal) as avgsal fromemp e group bye.deptno; 将以下查询结果当成临时表t(deptno,avgsal) +--------+-------------+ | deptno | avgsal | +--------+-------------+ | 10 | 2916.666667 | | 20 | 2175.000000 | | 30 | 1566.666667 | +--------+-------------+select * from salgrade; +-------+-------+-------+ | GRADE | LOSAL | HISAL | +-------+-------+-------+ | 1 | 700 | 1200 | | 2 | 1201 | 1400 | | 3 | 1401 | 2000 | | 4 | 2001 | 3000 | | 5 | 3001 | 9999 | +-------+-------+-------+select t.deptno,t.avgsal,s.grade from(selecte.deptno,avg(e.sal) as avgsalfromemp egroup bye.deptno) t joinsalgrade s ont.avgsal between s.losal and s.hisal; +--------+-------------+-------+ | deptno | avgsal | grade | +--------+-------------+-------+ | 30 | 1566.666667 | 3 | | 10 | 2916.666667 | 4 | | 20 | 2175.000000 | 4 | +--------+-------------+-------+
第二种情况:首先求出每个人的薪水属于那个等级,然后进行分组
3.2 取得部门中所有人的平均的薪水等级 第一步:求出每个人的薪水等级 select e.deptno,e.ename,s.grade fromemp e joinsalgrade s one.sal between s.losal and s.hisal order bye.deptno; +--------+--------+-------+ | deptno | ename | grade | +--------+--------+-------+ | 10 | CLARK | 4 | | 10 | MILLER | 2 | | 10 | KING | 5 | | 20 | ADAMS | 1 | | 20 | SMITH | 1 | | 20 | FORD | 4 | | 20 | SCOTT | 4 | | 20 | JONES | 4 | | 30 | BLAKE | 4 | | 30 | JAMES | 1 | | 30 | ALLEN | 3 | | 30 | WARD | 2 | | 30 | TURNER | 3 | | 30 | MARTIN | 2 | +--------+--------+-------+ 将以上查询结果当成临时表t(deptno,ename,grade) select t.deptno,avg(t.grade) as avgGrade from(select e.deptno,e.ename,s.gradefromemp ejoinsalgrade sone.sal between s.losal and s.hisal) t group byt.deptno; +--------+----------+ | deptno | avgGrade | +--------+----------+ | 10 | 3.6667 | | 20 | 2.8000 | | 30 | 2.5000 | +--------+----------+
4.不准用组函数(MAX),取得最高薪水(给出两种解决方案) select sal from emp order by sal desc limit 1;
5.取得平均薪水最高的部门的部门编号
5.取得平均薪水最高的部门的部门编号 第一步:求出部门平均薪水 selecte.deptno,avg(e.sal) as avgsal fromemp e group bye.deptno; +--------+-------------+ | deptno | avgsal | +--------+-------------+ | 10 | 2916.666667 | | 20 | 2175.000000 | | 30 | 1566.666667 | +--------+-------------+ 第二步:将以上查询结果当成临时表t(deptno,avgsal),求出最高的平均薪水 select max(t.avgsal) as maxAvgSal from (selecte.deptno,avg(e.sal) as avgsalfromemp egroup bye.deptno) t; +-------------+ | maxAvgSal | +-------------+ | 2916.666667 | +-------------+selecte.deptno,avg(e.sal) as avgsal fromemp e group bye.deptno having avgsal = (select max(t.avgsal) as maxAvgSal from (selecte.deptno,avg(e.sal) as avgsalfromemp egroup bye.deptno) t); +--------+-------------+ | deptno | avgsal | +--------+-------------+ | 10 | 2916.666667 | +--------+-------------+
主要这里有一个坑不能写成下面的形式:
select e.deptno,avg(e.sal) avgSal from emp e group bye.deptno order byavgSal desc limit 1;
因为如果有100个部门,可能存在很多个部门的平均值都是一样的
6.取得平均薪水最高的部门的部门名称 selecte.deptno,d.dname,avg(e.sal) as avgsal fromemp e joindept d one.deptno = d.deptno group bye.deptno,d.dname having avgsal = (select max(t.avgsal) as maxAvgSal from (selecte.deptno,avg(e.sal) as avgsalfromemp egroup bye.deptno) t);7.求平均薪水的等级最低的部门的部门名称 第一步:部门的平均薪水 select e.deptno,d.dname,avg(e.sal) as avgsal fromemp e joindept d one.deptno = d.deptno group bye.deptno,d.dname; +--------+------------+-------------+ | deptno | dname | avgsal | +--------+------------+-------------+ | 10 | ACCOUNTING | 2916.666667 | | 20 | RESEARCH | 2175.000000 | | 30 | SALES | 1566.666667 | +--------+------------+-------------+ 第二步:将以上结果当成临时表t(deptno,avgsal)与salgrade表进行表连接:t.avgsal between s.losal and s.hisal; select t.deptno,t.dname,s.grade from (select e.deptno,d.dname,avg(e.sal) as avgsalfromemp ejoindept done.deptno = d.deptnogroup bye.deptno,d.dname)t joinsalgrade s ont.avgsal between s.losal and s.hisal; +--------+------------+-------+ | deptno | dname | grade | +--------+------------+-------+ | 30 | SALES | 3 | | 10 | ACCOUNTING | 4 | | 20 | RESEARCH | 4 | +--------+------------+-------+ 第三步:将以上查询结果当成一张临时表t select min(t.grade) as minGrade from (select t.deptno,t.dname,s.gradefrom (select e.deptno,d.dname,avg(e.sal) as avgsalfromemp ejoindept done.deptno = d.deptnogroup bye.deptno,d.dname)tjoinsalgrade sont.avgsal between s.losal and s.hisal)t; +----------+ | minGrade | +----------+ | 3 | +----------+select t.deptno,t.dname,s.grade from (select e.deptno,d.dname,avg(e.sal) as avgsalfromemp ejoindept done.deptno = d.deptnogroup bye.deptno,d.dname)t joinsalgrade s ont.avgsal between s.losal and s.hisal wheres.grade = (select min(t.grade) as minGrade from (select t.deptno,t.dname,s.gradefrom (select e.deptno,d.dname,avg(e.sal) as avgsalfromemp ejoindept done.deptno = d.deptnogroup bye.deptno,d.dname)tjoinsalgrade sont.avgsal between s.losal and s.hisal)t); +--------+-------+-------+ | deptno | dname | grade | +--------+-------+-------+ | 30 | SALES | 3 | +--------+-------+-------+
8.取得比普通员工(员工代码没有在mgr上出现的)的最高薪水还要高的经理人姓名 第一步:找出普通员工(员工代码没有出现在mgr上的)1.1 先找出mgr有哪些人select distinct mgr from emp;+------+| mgr |+------+| 7902 || 7698 || 7839 || 7566 || NULL || 7788 || 7782 |+------+ select * from emp where empno in(select distinct mgr from emp); +-------+-------+-----------+------+------------+---------+------+--------+ | EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO | +-------+-------+-----------+------+------------+---------+------+--------+ | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 | | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | +-------+-------+-----------+------+------------+---------+------+--------+ select max(sal) as maxsal from emp where empno not in(select distinct mgr from emp where mgr is not null); +---------+ | maxsal | +---------+ | 1600.00 | +---------+not in不会自动忽略空值 in会自动忽略空值select ename from emp where sal > (select max(sal) as maxsal from emp where empno not in(select distinct mgr from emp where mgr is not null)); +-------+ | ename | +-------+ | JONES | | BLAKE | | CLARK | | SCOTT | | KING | | FORD | +-------+
第一步:找出普通员工(员工代码没有出现在mgr上的)1.1 先找出mgr有哪些人select distinct mgr from emp;+------+| mgr |+------+| 7902 || 7698 || 7839 || 7566 || NULL || 7788 || 7782 |+------+ select * from emp where empno in(select distinct mgr from emp); +-------+-------+-----------+------+------------+---------+------+--------+ | EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO | +-------+-------+-----------+------+------------+---------+------+--------+ | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 | | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | +-------+-------+-----------+------+------------+---------+------+--------+ select max(sal) as maxsal from emp where empno not in(select distinct mgr from emp where mgr is not null); +---------+ | maxsal | +---------+ | 1600.00 | +---------+not in不会自动忽略空值 in会自动忽略空值select ename from emp where sal > (select max(sal) as maxsal from emp where empno not in(select distinct mgr from emp where mgr is not null)); +-------+ | ename | +-------+ | JONES | | BLAKE | | CLARK | | SCOTT | | KING | | FORD | +-------+
这里有一个很关键的地方,not in 没有排除null值,如果存在null值和not in 做计算,得带的值就是null
mysql> select * from emp where empno not in(select distinct mgr from emp); Empty setmysql>
select distinct mgr from emp 的结果存在null值
这里not in 没有去掉null值得到的结果就是空
9.取得薪水最高的前五名员工 select * from emp order by sal desc limit 0,5; +-------+-------+-----------+------+------------+---------+------+--------+ | EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO | +-------+-------+-----------+------+------------+---------+------+--------+ | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | +-------+-------+-----------+------+------------+---------+------+--------+10.取得薪水最高的第六到第十名员工select * from emp order by sal desc limit 5,5; +-------+--------+----------+------+------------+---------+---------+--------+ | EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO | +-------+--------+----------+------+------------+---------+---------+--------+ | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | | 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 | +-------+--------+----------+------+------------+---------+---------+--------+11.取得最后入职的5名员工 select * from emp order by hiredate desc limit 5; +-------+--------+---------+------+------------+---------+------+--------+ | EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO | +-------+--------+---------+------+------------+---------+------+--------+ | 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100.00 | NULL | 20 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 | | 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | | 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | +-------+--------+---------+------+------------+---------+------+--------+
12.取得每个薪水等级有多少员工 第一步:查询出每个员工的薪水等级 select e.ename,s.grade from emp e joinsalgrade s one.sal between s.losal and s.hisal order bys.grade; +--------+-------+ | ename | grade | +--------+-------+ | JAMES | 1 | | SMITH | 1 | | ADAMS | 1 | | MILLER | 2 | | WARD | 2 | | MARTIN | 2 | | ALLEN | 3 | | TURNER | 3 | | BLAKE | 4 | | FORD | 4 | | CLARK | 4 | | SCOTT | 4 | | JONES | 4 | | KING | 5 | +--------+-------+ 将以上查询结果当成临时表t(ename,grade) selectt.grade,count(t.ename) as totalEmp from(select e.ename,s.grade from emp ejoinsalgrade sone.sal between s.losal and s.hisal) t group byt.grade; +-------+----------+ | grade | totalEmp | +-------+----------+ | 1 | 3 | | 2 | 3 | | 3 | 2 | | 4 | 5 | | 5 | 1 | +-------+----------+
转载于:https://www.cnblogs.com/kebibuluan/p/8385002.html
动力节点 mysql 郭鑫 34道经典的面试题相关推荐
- 动力节点 mysql 郭鑫 34道经典的面试题三
1.第十五题 15.列出受雇日期早于其直接上级的所有员工编号.姓名.部门名称 思路一:第一步将emp a看成员工表,将emp b 看成领导表,员工表的mgr字段应该等于领导表的主键字段 mysql&g ...
- 动力节点 mysql 郭鑫_动力节点 mysql 郭鑫 34道经典的面试题二
13.有3个表S(学生表),C(课程表),SC(学生选课表) S(SNO,SNAME)代表(学号,姓名) C(CNO,CNAME,CTEACHER)代表(课号,课名,教师) SC(SNO,CNO,SC ...
- mysql动力节点百度云_动力节点MySQL数据库视频 百度云 网盘 下载
资源名称:动力节点MySQL数据库视频 百度云 网盘 下载 # o4 E. q% ]2 ?百度网盘下载链接:[/hide]- t4 L+ S# b2 T( }! d) n& d 密码:dff7 ...
- 20道经典Redis面试题
前言 整理了20道经典Redis面试题,希望对大家有帮助. 1. 什么是Redis?它主要用来什么的? Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开 ...
- 71道经典Android面试题和答案,重要知识点都包含了
更多源码下载,请关注微信公众号:互联网技术分享 面试题 1. 下列哪些语句关于内存回收的说明是正确的? (b ) A. 程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用 ...
- 30道经典SQL面试题讲解(11-20)
本篇节选自书籍<对比Excel,轻松学习SQL数据分析>一书,主要讲解数据分析面试中常见的30道SQL面试题.1-10题见:30道经典SQL面试题讲解(1-10) 11 行列互换 现在我们 ...
- 这八道经典指针笔试题你都会做嘛?
本文详细介绍了八大指针经典笔试题,内涵盖指针大部分的用法, 全部了解掌握其原理之后对指针的学习大有帮助!!! 对指针掌握 也就掌握了内存,C语言也就没有什么更绕的了 详解八道经典指针笔试题 一.八道经 ...
- 50道经典计算机网络面试题
50道经典计算机网络面试题 1. 说说HTTP常用的状态码及其含义? 思路: 这道面试题主要考察候选人,是否掌握HTTP状态码这个基础知识点. 不管是不是面试需要,我们都要知道,日常开发中的这几个状态 ...
- 【MySQL】34道SQL综合练习详解(员工表、部门表、工资等级表)
文章目录 一.34道SQL综合练习 二.测试使用的数据表 三.创建测试表的SQL语句 一.34道SQL综合练习 1.查询取得每个部门最高工资的人员信息. select e.ename,t.* from ...
最新文章
- python怎么安装pandas模块-如何优雅的安装Python的pandas?
- 多项式乘法c语言,急!!!!c语言:求n次多项式的加法和乘法
- 苍天啊,请你不要再哭泣
- java高级语言特性_Java语言高级特性——注解
- Ubuntu 16.04关闭Alt+鼠标左键移动窗口(转)
- Kotlin的继承(二)
- ffdshow 源代码分析 9: 编解码器有关类的总结
- 智乃的数据库(STL+小技巧)
- 单机手机消消乐php游戏源码,JS叠房子消消乐小游戏代码
- 织梦index.php不更新,亲测dede织梦后台无法更新生成,更新没反应的解决方法
- 【软件工具】--- 软件安装管家目录
- 齐博cms基础教程之认识齐博cms
- Bootstrap 新手学习手册---环境部署与网格系统
- sd卡无法读取怎么办?内存卡数据恢复,4个好用方法
- 删除Linux中的.swp文件
- django全自动分库分表(横向)
- SQLServer 连接不上 找不到网络路径
- 实际开发中常用的SQL
- 矩形连乘问题c语言,矩阵连乘问题
- yum配置代理proxy