mysql练习02

职工系统:

设有关系职工表(职工号empno,职工名ename,部门号deptno,工资sal)和部门表(部门号deptno,部门名dname,主任manager),用SQL语句完成下列要求:

create table emp (

empno int(10) primary key,

ename varchar(20),

deptno int(10),

sal decimal(10,2)

);

create table department (

deptno int(10) primary key,

dname varchar(20),

manager varchar(20)

);

根据题目的关键字自行构建测试数据(比较重要)

(1)向职工表中插入行(‘025’,‘王芳’,‘03’,1000)

insert into emp values(‘025‘, ‘王芳‘, ‘03‘, ‘1000‘);

(2)从职工表中删除人事处的所有员工

delete from emp where deptno = (select deptno from department where dname = ‘人事处‘);

(3)将职工号为‘001’的员工工资改为700元钱

update emp set sal = ‘700‘ where empno = ‘001‘;

(4)查询人事处的员工最高工资

select max(sal) from emp where deptno = (select deptno from department where dname = ‘人事处‘);

(5)查询“王芳”所在部门的部门主任

select manager from department where deptno = (select deptno from emp where ename = ‘王芳‘);

(6)查询与“王芳”在同一部门的其它员工信息

select * from emp where deptno = (select deptno from emp where ename = ‘王芳‘) and ename not like ‘王芳‘;

(7)建立公司所有部门的公共视图——部门职工视图

create view dept_sta_view(empno, ename, deptno, sal, dname, mgr) as select a.empno, a.ename, a.deptno, a.sal, b.dname, b.manager from emp a, department b where a.deptno = b.deptno;

(8)从部门职工视图中查询财务处员工工资高于800元的员工信息

select * from dept_sta_view where sal > ‘800‘ and dname = ‘财务处‘;

时间: 2024-08-30 13:39:37

mysql练习02的相关文章

MYSQL基础02(查询)

查询是很大的一块,所以这里我只会写mysql的特点,就我目前使用的情况,MYSQL对标准SQL是比较支持,如果是新手的话,建议去w3school 学习标准SQL. 1.DUAL DUAL是一个虚拟表,即该表是不存在的,用于直接select 标量时,使语句看起来符合sql规范 -- MSSQL select 1,'A' -- Oracle中dual 不可缺少 select 1,'A' from DUAL -- mysql 以下2种格式都支持 select 1,'A'; select 1,'A' f

mysql数据类型(02)

MYSQL数据库名称是否区别大小写,取决于文件系统,windows不区分,linux区分.  mysql数据库类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 字节数:   1       2        3       4     8 修饰符UNSIGNED(无符号)  NOT NULL(不为空) 浮点数类型:单精度(FLOAT) 双精度(double) 字节数:   4               8 定点数类型:DECIMAL(M,D) 字节数:

[mysql系列02]mysql常用语法

本文结合具体的实例讲解mysql基础常用语法 CREATE DATABASE CREATE DATABASE db_name CREATE DATABASE用给定的名字创建一个数据库,创建数据库mysqllearn. create database mysqllearn; CREATE TABLE CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)] [table_options] [select_

MySQL案例02:ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES

MySQL在授权用户时出现报错信息,具体信息如下: 一.错误信息 执行命令: GRANT SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION

MySQL总结02

sql优化 Insert使用批量 查询不要使用*, MySQ需要先查出表里的所有字段,再进行匹配 字符串的查询条件要带引号,否则可能不走索引 备份及恢复 备份 mysqldump -uroot -ppasswd -B dbname > filename.sql note: -B备份指定库,使用-B备份文件中多了两行代码(create database dbname; use dbname;) -A是备份所有的库 指定字符集备份 mysqldump -uroot -ppasswd -B -defa

mysql数据库02 基础教程

查询数据 SELECT column_1, column_2, ... FROM table_1 [INNER | LEFT |RIGHT JOIN table_2 ON conditions] WHERE conditions GROUP BY column_1 HAVING group_conditions ORDER BY column_1 LIMIT offset, length; SELECT语句由以下列表中所述的几个子句组成: SELECT 之后是逗号分隔列或星号(*)的列表,表示要

mysql学习02

清空数据库的内容 drop table tb1; #直接删除表 delete from tb1; #清空表的内容 truncate table tb1;清空标的内容,速度快 自增数字会从零开始重新计数 259 原文地址:https://www.cnblogs.com/Mengchangxin/p/9658133.html

SUSE Linux源码编译安装MySQL 5.6

这篇文章主要介绍了SUSE Linux下源码编译方式安装MySQL 5.6过程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系统,需要的朋友可以参考下.MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文

MySQL阶段七——MySQL优化

mysql优化 -一.硬件优化(优化的主要点) 01.CPU----最好是64位的,例:8-16颗CPU 02.内存----例:96G-128G,3-4个实例 03.disk----数量越多越好,性能:ssd(适合高并发业务)>sas(普通上线业务)>sata(适合线下) RAID----部署合适的RAID 04.网卡----多块网卡bond,以及buffer,tcp优化 -二.软件优化 01.操作系统----x86_64 02.软件:mysql,编译优化 -三.my.cnf里面参数优化 (一