1.创建表

create table TSB

(
zbh char(10) primary key ,
flh char(10) not null,
sm varchar(30) not null,
zz varchar(30) not null,
cbdw varchar(50) not null,
dj numeric(3,3) not null

);

create table DZB
(
jszh char(10)  unique primary key,
dw varchar(20) not null,
xm varchar(20) not null,
xb char(10) not null,
zc varchar(20) not null,
dz varchar(50) not null
);

create table JYB
(
jszh char(10) ,
foreign key(jszh) references dzb(jszh),
zbh char(10),
foreign key(zbh) references tsb(zbh),
jsrq timestamp(8) not null

);

注意:外键语法---foreign key(从表字段) references 主表名(从表字段)

2.插入数据

insert into TSB(zbh,flh,sm,zz,cbdw,dj)
    values('445501','TP3/12','数据库导论','王强','科学出版社','17.90'),/*????怎么重新输入相同的内容,只改变一个记录????*/
        ('445502','TP3/12','数据库导论','王强','科学出版社','17.90'),
        ('445503','TP3/12','数据库导论','王强','科学出版社','17.90'),
        ('332211','TP5/10','计算机基础','李伟','高等教育出版社','18.00'),
        ('112266','TP3/12','FoxBASE','张三','电子工业出版社','23.60'),

('665544','TS7/21','高等数学','刘明','高等教育出版社','20.00'),
        ('114455','TR9/12','线性代数','孙业','北京大学出版社','20.80'),
        ('113388','TR7/90','大学英语','胡玲','清华大学出版社','12.50'),
        ('446601','TP4/13','数据库基础','马凌云','人民邮电出版社','22.50'),
        ('446602','TP4/13','数据库基础','马凌云','人民邮电出版社','22.50'),

('446603','TP4/13','数据库基础','马凌云','人民邮电出版社','22.50'),
        ('449901','TP4/14','FoxPro大全','周虹','科学出版社','32.70'),
        ('449902','TP4/14','FoxPro大全','周虹','科学出版社','32.70'),
        ('118801','TP4/15','计算机网络','黄力钧','高等教育出版社','21.80'),
        ('118802','TP4/15','计算机网络','黄立钧','高等教育出版社','21.80');
insert into  DZB(jszh,dw,xm,xb,zc,dz)
    values ('111','信息系','王维利','女','教授','1号楼424'),
        ('112','财会系','李立','男','副教授','2号楼316'),
        ('113','经济系','张三','男','教授','3号楼105'),
        ('114','信息系','周华发','男','教授','1号楼316'),
        ('115','信息系','赵正义','男','教授','1号楼224'),

('116','信息系','李明','男','教授','1号楼318'),
        ('117','计算机系','李晓峰','男','教授','1号楼214'),
        ('118','计算机系','徐鹏飞','男','教授','1号楼216'),
        ('119','计算机系','刘大龙','男','教授','1号楼318'),
        ('120','国际贸易系','李雪','女','教授','4号楼506'),

('121','国际贸易系','李爽','女','教授','4号楼510'),
        ('122','国际贸易系','王春','女','教授','4号楼512'),
        ('123','财会系','沈晓霞','女','教授','2号楼202'),
        ('124','财会系','朱海','男','教授','2号楼210'),
        ('125','财会系','马英明','男','教授','2号楼212');
insert into JYB(jszh,zbh,jsrq)
    values('112','112266','19970314'),
        ('112','445501','19970319'),/*此表因为没有主键存在可以重复录入*/
        ('125','332211','19970212'),
        ('111','445503','19970821'),
        ('114','665544','19971021'),
        ('120','114455','19971102'),

('120','118801','19971018'),
        ('119','446603','19971212'),
        ('112','449901','19971023'),
        ('115','449902','19970821'),
        ('118','118801','19970910');

3.单表查询

用SQL完成如下查询:

1)        找出姓李的读者姓名和所在单位。

2)        列出图书库中所有藏书的书名。

3)        查找高等教育出版社的所有图书及单价,结果按单价降序排序。

4)      查找价格介于10元和20元之间的图书种类,结果按出版单位和单价升序排序。

5)        查找书名以计算机打头的所有图书和作者。

答案:

select xm,dw from dzb where xm like '李%';
/*列出图书库中所有藏书的书名*/
select sm from tsb group by sm;
select distinct sm from tsb;

select sm,dj from tsb where cbdw='高等教育出版社' order by dj desc;

/*注意使用”>=“和”<=“时小数和整数影响查询结果*/
select flh from tsb where dj>='10' and dj<= '20' order by cbdw,dj;
select flh from tsb where dj>='10.00' and dj<= '20.00' order by cbdw,dj;
/*between ... and ...  无影响*/
select flh from tsb where dj between 10 and 20 order by cbdw,dj;

select sm,zz from tsb where sm like '计算机%';

完成下面SQL高级查询:

13)     求科学出版社图书的最高单价、最低单价、平均单价。

15)     求出各个出版社图书的最高价格、最低价格和册数。

19)      找出藏书中各个出版单位的册数、价值总额。

答案:

select max(dj) as '最高单价', min(dj) as '最低单价',avg(dj) as '平均单价' from tsb where cbdw='科学出版社';
select cbdw as '出版单位',max(dj),min(dj),count(*) from tsb group by cbdw;
select cbdw as '出版单位', sum(dj),count(dj) from tsb group by cbdw;

mysql入门1:建表、插入、单表查询练习题1相关推荐

  1. MySQL数据库 第5章:单表操作

    MySQL数据库 第5章:单表操作 5.1 数据操作 5.1.1 复制表结构和数据 5.1.2 解决主键冲突 5.1.3 清空数据 5.1.4 去除重复记录 5.2 排序与限量 5.2.1 排序 5. ...

  2. MySQL从安装到精通(单表)

    目录 MySQL(结构化查询语言)单表基础 简介: 数据库的三层结构-破除数据库的神秘面纱 什么是关系型数据库 常见的关系性数据库 *SQL的分类* My SQL的安装 可视化工具的使用(SQLyog ...

  3. springDataJpa入门教程(5)-单表动态条件查询+分页

    springDataJpa入门教程 springDataJpa入门教程(1)-基于springBoot的基本增删改查 springDataJpa入门教程(2)-Specification动态条件查询+ ...

  4. mysql获取一个表的数据作为值插入_请问如何在mysql中得到一个即将插入数据表中的那条数据的id值(id自增长)?...

    我们在写数据库程序的时候,经常会需要获取某个表中的最大序号数, 一般情况下获取刚插入的数据的id,使用select max(id) from table 是可以的. 但在多线程情况下,就不行了. 下面 ...

  5. Spark入门(十七)之单表关联

    一.单表关联 给出child-parent(孩子--父母)表,要求输出grandchild-grandparent(孙子--祖父母)表 二.maven设置 <?xml version=" ...

  6. django(七)之数据库表的单表-增删改查QuerySet,双下划线

    https://www.cnblogs.com/haiyan123/p/7738435.html https://www.cnblogs.com/yuanchenqi/articles/6083427 ...

  7. NC Cloud参照过滤(主子表、单表、查询区、报表)

    NC Cloud参照过滤 在业务进行过程中,二开的单据需要我们自行设置参照过滤,本文详细讲解. 单表.主子表查询区过滤 举例:查询区的银行账户需要根据已选择的财务组织进行过滤,更改财务组织时清空已选择 ...

  8. Delphi中ADO查询多表更新单表解决方法

    学Delphi也好久了,但一直没怎么总结,这不好久没弄ADO了,趁这个星期一直看公司的代码,自己也来实践一下.以前一直用ADO操作单表,一直没怎么弄过ADO操作多表的程序,不自己实践一下还真不知道操作 ...

  9. Mysql的学习4____数据的单标查询,连接查询,自连接查询,子查询

    DQL(Data Query Language):数据库查询语言 1.进行简单的单表查询,复杂的多表查询,嵌套查询: /* SELECT [ALL | DISTINCT] {* | table.* | ...

  10. Mysql入门学习(二)之子查询+关联

    关联查询(重点) 1.1 子查询 概述:一个查询的结果作为另一个查询的条件 语法:SELECT 列名 FROM 表名 Where 条件(子查询结果) 案例: 查询工资大于Bruce 的员工信息 1.先 ...

最新文章

  1. boost::fusion::back_extended_deque用法的测试程序
  2. 使用Nginx+Lua(OpenResty)开发高性能Web应用
  3. const修饰是指针和常量
  4. 从搭建大数据环境说起,到执行WordCount所遇到的坑
  5. 消息中间件kafka集群搭建
  6. Java并发(二)——ThreadLocal
  7. SQL语句中 NOT IN 子句的“正确打开方式”
  8. html 音乐代码生成器,在线自动生成音乐播放器
  9. SOEM建立主站程序
  10. 在ArcMap中直接加载谷歌地球影像的方法
  11. Vue入门---实现汇率换算
  12. 删除单向链表的最后一个节点
  13. Cisco ASA 基础
  14. 曼哈顿算法公式_Manhattan Distance Calculation(曼哈顿距离算法)
  15. 关于异业联盟和O2O商业模式的一些想法
  16. dijkstra标号法表格_狄克斯屈拉dijkstra标号算法.pptx
  17. 各种矩阵(向量)求导
  18. 如何在Eclipse 中将隐藏的包给显示出来
  19. java 数组内元素相乘,java数组元素如何进行加减乘除,请大侠咪赐教!!
  20. 每日一题01、02(斐波那契凤尾、淘宝网店、美国节日、分解因数)

热门文章

  1. 小程序源码:笑话段子手-多玩法安装简单
  2. JavaScript Date相关练习
  3. perf top 实时分析 CPU 使用情况
  4. Java:class6 继承
  5. python-百分号字符串拼接
  6. 支持笔锋效果的手写签字控件
  7. python去除字符串中的单词_从字符串中删除特定单词的最有效方法
  8. 《近匠》 | 探索一站式智能硬件开发的最佳解决方案
  9. phalapi-进阶篇6(解决大量数据存储数据库分表分库拓展)
  10. 个人博客_温州个人博客_Duing-冬忆个人博客