SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for dept
-- ----------------------------
DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept` (
`DEPTNO` int(11) NOT NULL,
`DNAME` varchar(14) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL,
`LOC` varchar(13) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL,
PRIMARY KEY (`DEPTNO`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of dept
-- ----------------------------
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');
-- ----------------------------
-- Table structure for emp
-- ----------------------------
DROP TABLE IF EXISTS `emp`;
CREATE TABLE `emp` (
`EMPNO` int(11) NOT NULL,
`ENAME` varchar(10) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL,
`JOB` varchar(9) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL,
`MGR` int(11) DEFAULT NULL,
`HIREDATE` date DEFAULT NULL,
`SAL` double DEFAULT NULL,
`COMM` double DEFAULT NULL,
`DEPTNO` int(11) DEFAULT NULL,
PRIMARY KEY (`EMPNO`) USING BTREE,
INDEX `EMP`(`DEPTNO`) USING BTREE,
CONSTRAINT `EMP` FOREIGN KEY (`DEPTNO`) REFERENCES `dept` (`DEPTNO`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of emp
-- ----------------------------
INSERT INTO `emp` VALUES (7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800, NULL, 20);
INSERT INTO `emp` VALUES (7499, 'ALLEN', 'SALESMAN', 7698, '1981-02-20', 1600, 300, 30);
INSERT INTO `emp` VALUES (7521, 'WARD', 'SALESMAN', 7698, '1981-02-22', 750, 500, 30);
INSERT INTO `emp` VALUES (7566, 'JONES', 'MANAGER', 7839, '1981-04-02', 2975, NULL, 20);
INSERT INTO `emp` VALUES (7654, 'MARTIN', 'SALESMAN', 7698, '1981-09-28', 1250, 1400, 30);
INSERT INTO `emp` VALUES (7698, 'BLAKE', 'MANAGER', 7839, '1981-05-01', 2850, NULL, 30);
INSERT INTO `emp` VALUES (7782, 'CLARK', 'MANAGER', 7839, '1981-06-09', 2450, NULL, 10);
INSERT INTO `emp` VALUES (7788, 'SCOTT', 'ANALYST', 7566, '1987-07-03', 1600, NULL, 20);
INSERT INTO `emp` VALUES (7839, 'KING', 'PRESIDENT', NULL, '1981-11-17', 5000, NULL, 10);
INSERT INTO `emp` VALUES (7844, 'TURNER', 'SALESMAN', 7698, '1981-09-08', 1500, 0, 30);
INSERT INTO `emp` VALUES (7876, 'ADAMS', 'CLERK', 7788, '1987-07-13', 1100, NULL, 20);
INSERT INTO `emp` VALUES (7900, 'JAMES', 'CLERK', 7698, '1981-12-03', 950, NULL, 30);
INSERT INTO `emp` VALUES (7902, 'FORD', 'ANALYST', 7566, '1981-12-03', 3000, NULL, 20);
INSERT INTO `emp` VALUES (7934, 'MILLER', 'CLERK', 7782, '1981-01-23', 1300, NULL, 10);
-- ----------------------------
-- Table structure for salgrade
-- ----------------------------
DROP TABLE IF EXISTS `salgrade`;
CREATE TABLE `salgrade` (
`GRADE` int(11) DEFAULT NULL,
`LOSAL` double DEFAULT NULL,
`HISAL` double DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of salgrade
-- ----------------------------
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);
SET FOREIGN_KEY_CHECKS = 1;
#1、查找部门30中员工的详细信息。
#2、找出从事clerk工作的员工的编号、姓名、部门号。
#3、检索出奖金多于基本工资的员工信息。
#4、检索出奖金多于基本工资60%的员工信息。
#5、找出10部门的经理、20部门的职员 的员工信息。
#6、找出10部门的经理、20部门的职员 或者既不是经理也不是职员但是工资高于2000元的员工信息。
#7、找出获得奖金的员工的工作。
#8、找出奖金少于100或者没有获得奖金的员工的信息。
#9、找出姓名以A、B、S开始的员工信息。
#10、找到名字长度为6个字符的员工信息。
length
#11、名字中不包含R字符的员工信息。
#12、返回员工的详细信息并按姓名排序。
#13、返回员工的信息并按工作降序工资升序排列。
#14、计算员工的日薪(按30天)。
#1、返回拥有员工的部门名、部门号。
#2、工资水平多于smith的员工信息。
#4、返回雇员的雇佣日期早于其经理雇佣日期的员工及其经理姓名。
#5、返回员工姓名及其所在的部门名称。
#6、返回从事clerk工作的员工姓名和所在部门名称。
#7、返回部门号及其本部门的最低工资。
#8、返回销售部(sales)所有员工的姓名。
#9、返回工资水平多于平均工资的员工。
#10、返回与SCOTT从事相同工作的员工。
#11、返回与30部门员工工资水平相同的员工姓名与工资。
#12、返回工资高于30部门所有员工工资水平的员工信息。
#13、返回部门号、部门名、部门所在位置及其每个部门的员工总数。
#14、返回员工的姓名、所在部门名及其工资。
#15、返回员工的详细信息。(包括部门名)
#16、返回员工工作及其从事此工作的最低工资。
#17、计算出员工的年薪,并且以年薪排序。
#18、返回工资处于第四级别的员工的姓名。
between and
#19、返回工资为二等级的职员名字、部门所在地、和二等级的最低工资和最高工资
#20. 工资等级多于smith的员工信息。
左链接 : 显示左表所有内容及右表中连接字段相等的内容
右链接 : 显示右表所有内容及左表中连接字段相等的内容
内连接 : 显示二表中连接字段相等的记录
其他
case sex when 1 then '男' else '女' end as sex
if(sex,1) ifnull(1,sex)
再其他:
create database name;
drop database name;
use databasename;
alter table table_name add i int ;
alter table table_name drop i;
insert into table_name(id,name) values(1,'haha')
update table_name set id='2',name='h' where id = '1'
delete from table_name where id = '1'
insert into table_name select * from table_name2