IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL-练习1 -> 正文阅读

[大数据]MySQL-练习1

MySQL-练习1

-- 部门表
CREATE TABLE department(
    id INT PRIMARY KEY AUTO_INCREMENT, -- 部门ID
    dname VARCHAR(30) NOT NULL UNIQUE, -- 部门名称
    address VARCHAR(40),               -- 部门地址
    leeder VARCHAR(20) NOT NULL        -- 部门领导
);

INSERT INTO department VALUE
(NULL, "财务部", "北京市", "李老板"),
(NULL, "销售部", "上海市", "王老板"),
(NULL, "开发部", "广州市", "胡老板"),
(NULL, "客服部", "深圳市", "曾老板");

-- 员工表
CREATE TABLE employees(
    id INT PRIMARY KEY AUTO_INCREMENT, -- 员工ID
    ename VARCHAR(20) NOT NULL,        -- 姓名
    sex VARCHAR(10),                   -- 性别
    phone INT UNIQUE,                  -- 电话号码
    hiredate DATE,                     -- 入职时间
    salary INT,                        -- 薪资
    depa_id INT,                       -- 部门ID
    CONSTRAINT emp_dep_fk FOREIGN KEY (depa_id) REFERENCES department(id)
);

INSERT INTO employees VALUE
(NULL, "小虎", "男", 10086, "2016-04-27", 6000, 1),
(NULL, "小林", "男", 10000, "2017-08-11", 9000, 2),
(NULL, "小花", "女", 10010, "2015-11-02", 3000, 2),
(NULL, "小李", "男", 10001, "2011-08-19", 2000, 2),
(NULL, "小丽", "女", 10085, "2018-12-01", 6000, NULL),
(NULL, "小红", "女", 10011, "2017-09-07", NULL, 3),
(NULL, "小胡", "男", 12315, "2008-06-15", 8000, 4),
(NULL, "小廖", "男", 12306, "2021-10-30", 7000, 4);

-- 隐式内连接,查询所有员工信息和对应的部门名称、部门领导
SELECT t1.*, t2.`dname`, t2.`leeder`
FROM employees t1, department t2 WHERE t1.`depa_id` = t2.`id`;

-- 显式内连接,查询所有员工信息和对应的部门名称、部门领导
SELECT t1.*, t2.`dname`, t2.`leeder`
FROM employees t1 INNER JOIN department t2 ON t1.`depa_id` = t2.`id`;

-- 左外连接,查询所有员工信息,如果员工有部门则查询部门名称,没有部门则不显示部门名称
SELECT t1.*, t2.`dname`
FROM employees t1 LEFT OUTER JOIN department t2 ON t1.`depa_id` = t2.id;

-- 右外连接,查询所有员工信息,如果员工有部门则查询部门名称,没有部门则不显示部门名称
SELECT t1.*,t2.`dname`
FROM department t2 RIGHT OUTER JOIN employees t1 ON t1.`depa_id` = t2.id;

-- 子查询,查询工资最高的员工信息
SELECT * FROM employees WHERE salary = (SELECT MAX(salary) FROM employees);

-- 子查询结果是单行单列的,查询工资小于平均工资的所有员工信息
SELECT * FROM employees WHERE salary < (SELECT AVG(salary) FROM employees);

-- 子查询结果是多行单列的,查询"财务部"和“开发部”的所有员工信息
SELECT * FROM employees WHERE depa_id IN(SELECT id FROM department WHERE dname IN ("财务部", "开发部"));

-- 子查询结果是多行多列的,查询员工的入职日期是2016年后的员工信息和部门信息
SELECT * FROM (SELECT * FROM employees WHERE employees.`hiredate` > "2016-00-00") t1, department t2
WHERE t1.`depa_id` = t2.`id`;

-- 普通内连接查询,查询员工的入职日期是2016年后的员工信息和部门信息
SELECT * FROM employees t1, department t2 WHERE t1.`depa_id` = t2.`id` AND t1.`hiredate` > "2016-00-00";

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-15 11:51:47  更:2021-10-15 11:54:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:48:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码