zoukankan      html  css  js  c++  java
  • Mysql 数据库 基础代码

    --  创建数据库
    CREATE DATABASE book;
    -- 创建作者表
    CREATE TABLE authors(
    Id int not NULL,	-- 作者编号
    Fname VARCHAR(10), -- 姓
    Lname VARCHAR(12), -- 名
    Sex CHAR(2),	
    Sage int 
    );
    -- 创建图书表
    CREATE table titles(
    tId int not NULL , -- 图书编号
    tname VARCHAR(25) , -- 书名
    type VARCHAR(25),
    price int 
    );
    -- 添加数据
    
    INSERT authors VALUES (001,'*','**','男',100), (002,'张','三丰','男',43),(003,'丰','丰田','男',23),(004,'郭','丰男','男',34),(005,'李','晓莉','女',22);
    INSERT titles VALUES (001,'***语录','文学类',20),(002,'三丰秘籍','武术类',230),(003,'汽车维修宝典','商业类',55),(004,'大话古典文化','文学类',22),(005,'古诗词赏析','文学类',10);
    
    -- 查询:authors
    SELECT Lname FROM AUTHORS WHERE Lname LIKE '丰%';  -- 1、	列出以字母‘丰’开头的名;
    SELECT Lname FROM AUTHORS WHERE Lname LIKE '%丰%'; -- 2、	列出包含‘丰’字符的名; 
    SELECT Lname FROM AUTHORS WHERE Lname LIKE '%丰'; -- 3、	列出以‘丰’结尾的名。
    SELECT COUNT(*) 30岁以上的作者的人数 FROM AUTHORS WHERE Sage>30; -- 4、	列出作者表中年龄在30岁以上的作者的人数。
    SELECT COUNT(*) 男作者人数 FROM AUTHORS WHERE Sex ='男';-- 5、	列出男作者的人数。
     -- 6、	列出最小年龄的作者
    SELECT Fname,Lname FROM AUTHORS WHERE Sage=(SELECT MIN(Sage) FROM AUTHORS)  -- ??怎么合并两个列名得数据成 一列显示
    
    -- 查询 图书表
    -- 统计‘商业类’图书的数量;
    SELECT COUNT(*) 数量 FROM titles WHERE type = '商业类'
    -- 2、	统计各类图书的平均价格。
    SELECT AVG(price) FROM titles
    -- 3、	统计‘商业类’图书的总价格;
    SELECT sum(price) 数量 FROM titles WHERE type = '商业类'
    -- 4、	列出‘商业类图书’中最贵的书;
    SELECT tname FROM titles WHERE price = (SELECT max(price) FROM titles WHERE type = '商业类')
    
    
    
    --  创建 部门表
    CREATE TABLE department (
    deptno VARCHAR(20),
    deptname VARCHAR(20),
    marno int  -- 部门经理编号
    );
    -- 添加数据
    INSERT into department VALUES ('1122','财务部',105),('119','消防队',103),('315','消费者协会',104);
    
    -- 创建 雇员表
    CREATE TABLE employee(
    empno int,
    ename VARCHAR(20),
    job VARCHAR(20),
    deptno VARCHAR(20),
    hiredate date,-- 入职时间
    sal int ,-- 薪水
    comm int-- 佣金
    );
    -- 添加数据
    INSERT into employee VALUES (11221,'王五','经理','1122','1921-1-1',2500,1000),(1201,'医院张三','院长','120','1996-1-1',4700,2000),(1191,'消防队张三','队长','119','1981-1-1',1500,2000),(3151,'消费者协会张三','会长','315','1998-1-1',3500,154);
     
    -- 1、	显示雇员名、部门编号、部门名称。(内联)
    SELECT ename 雇员名, employee.deptno 部门编号,deptname 部门名称 FROM employee INNER JOIN  department ON employee.deptno = department.deptno
    -- 2、	显示职务是经理的员工名、部门编号、部门名。(内联)
    SELECT ename 员工, employee.deptno 部门编号,deptname 部门名称 FROM employee  INNER JOIN  department ON employee.deptno = department.deptno AND job = '经理';
    -- 3、	显示在‘财务部’工作的员工名、工作、部门编号、部门名。(内联)
    SELECT ename 员工, job 工作,deptname 部门名称 FROM employee  INNER JOIN  department ON employee.deptno = department.deptno AND deptname = '财务部';
    -- 4、	显示员工名、员工编号和他们经理的经理编号,部门编号。(内联)
    SELECT ename 员工, empno 员工编号,marno 经理编号,employee.deptno 部门编号 FROM employee  INNER JOIN  department ON employee.deptno = department.deptno;
    
    -- 5、	显示不同部门的部门名、员工数,员工的平均薪水。(内联)
    SELECT deptname 部门名 ,COUNT(ename) 员工数 ,sum(sal+comm) 薪水 FROM employee   INNER JOIN  department ON   employee.deptno = department.deptno
    GROUP BY 部门名 ORDER BY 薪水 ;

  • 相关阅读:
    EasyUI——常见用法总结
    递归算法(转)
    1215整理
    jQuery Ajax 实例 全解析(转)
    EL表达式 (详解)
    JSTL 核心标签库 使用(转)
    JSTL标签用法 详解(转)
    JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
    java中的基本jdbc中mvc基本示例
    Hibernate的QBC检索方式
  • 原文地址:https://www.cnblogs.com/aikongmeng/p/3697426.html
Copyright © 2011-2022 走看看