zoukankan      html  css  js  c++  java
  • mysql 实战

    建表语句:
    CREATE TABLE employee (
    id int(11) NOT NULL AUTO_INCREMENT,
    name varchar(150) NOT NULL DEFAULT '',
    dept varchar(150) NOT NULL DEFAULT '',
    salary int(11) NOT NULL DEFAULT '0',
    edlevel int(11) NOT NULL DEFAULT '0',
    hiredate varchar(150) NOT NULL DEFAULT '',
    PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    插入数据:
    INSERT INTO employee (id, name, dept, salary, edlevel, hiredate)
    VALUES
    (1,'张三','开发部',2000,3,'2009-10-11'),
    (2,'李四','开发部',2500,3,'2009-10-01'),
    (3,'王五','设计部',2600,5,'2010-10-12'),
    (4,'王六','设计部',2300,4,'2010-10-03'),
    (5,'马七','设计部',2100,4,'2010-10-06'),
    (6,'赵八','销售部',3000,5,'2010-10-05'),
    (7,'钱九','销售部',3100,7,'2010-10-07'),
    (8,'孙十','销售部',3500,7,'2010-10-06');

    1、列出工资高于本部门平均工资的员工姓名、工资、部门名称;
    select a.name,a.dept,a.salary from employee a where a.salary > (select avg(b.salary) from employee b where a.dept=b.dept);

    2、列出各部门中工资高于本部门平均工资的员工数和部门名称;
    select dept,count(*) num from employee a where a.salary > (select avg(b.salary) from employee b where a.dept=b.dept) group by a.dept;

    二、
    CREATE TABLE stuscore (
    id int(11) NOT NULL AUTO_INCREMENT,
    name varchar(50) NOT NULL DEFAULT '',
    class varchar(50) NOT NULL DEFAULT '',
    course varchar(50) NOT NULL DEFAULT '',
    score int(11) NOT NULL DEFAULT '0',
    PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    INSERT INTO stuscore (id, name, class, course, score)
    VALUES
    (1,'小明','1班','高数',81),
    (2,'小明','1班','数据结构',88),
    (3,'小明','1班','操作系统',65),
    (4,'小红','1班','数据结构',55),
    (5,'小丁','2班','高数',90),
    (6,'小样','3班','高数',70),
    (7,'小样','3班','数据结构',78),
    (8,'小红','1班','高数',67),
    (9,'小丁','2班','操作系统',87),
    (10,'小红','1班','操作系统',52);

    1、列出课程得分小于课程平均分的记录;
    select a.* from stuscore a ,(select course as a_course,avg(score) as a_score from stuscore group by course) as avg_score
    where a.course=avg_score.a_course and a.score < avg_score.a_score ;
    2、筛选出每门课程都比对应课程平均分低的同学(悬而未决)

    三、
    CREATE TABLE provincet (
    id int(11) NOT NULL AUTO_INCREMENT,
    province varchar(50) NOT NULL DEFAULT '',
    PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    INSERT INTO provincet (id, province)
    VALUES
    (1,'广东'),
    (2,'湖南'),
    (3,'湖北');

    CREATE TABLE city (
    id int(11) NOT NULL AUTO_INCREMENT,
    pid int(11) NOT NULL DEFAULT '0',
    city varchar(50) NOT NULL DEFAULT '',
    PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    INSERT INTO city (id, pid, city)
    VALUES
    (1,1,'广州'),
    (2,1,'深圳'),
    (3,1,'惠州'),
    (4,2,'长沙'),
    (5,3,'武汉');
    1、统计每个省份有几个城市,显示字段:省份id、省份名、城市个数
    select p.id,p.province,count(pid) num from provincet p left join city c on p.id = c.pid group by pid;

    http://topmanopensource.iteye.com/blog/364584

  • 相关阅读:
    window.open 子窗口关闭刷新父页面
    window.open打开新窗口报错ie 位指明错误,原因是window没有加引号!
    ORA-22922: 不存在的 LOB 值 可以使用外层嵌套wm_concat()解决
    子窗口打开父窗口
    页面加载时触发事件
    json
    orcale 函数wm_concat不存咋lob值使用zh_concat 替换
    mongo常见错误
    mongo中插入数据,出现id重复
    cpu占用率
  • 原文地址:https://www.cnblogs.com/heyijing/p/6396634.html
Copyright © 2011-2022 走看看