SQL语句小练习
一、创建如下表结构(t_book)
Id 主键 自增一
bookName 可变长 20
Price 小数
Author 可变长20
bookTypeId 图书类型
二、创建如下表结构(t_bookType)
Id 主键 自增一
bookTypeName 可变长20
三、填加表记录(每个表填加一条即可)


四、查看每本书的书名和类型
五、如何得到下列结果(所有图书所有类型)

六、如果得到下列结果(图书和类型匹配才显示)

七、如果想查出所有图书和其图书类型(假设有的图书没有类型)
八、查询出教育类和计算机类的图书
九、显示高于平均价格的图书
十、显示所有图书类型表中存在类型的图书
删除图书表中已经在类型表中没有的信息
答案:
1
create table t_book(
id int PRIMARY KEY auto_increment,
bookName varchar(20),
price FLOAT,
author VARCHAR(20),
bookTypeId int
foreign key(bookTypeid) references t_bookType(id)
);
2
create table t_bookType(
id int PRIMARY KEY,
bookTypeName VARCHAR(20)
);
3
insert into t_bookType(bookTypeName) values('教育类')
insert into t_book(bookName,price,author,bookTypeId) values('java从入门到精通',80,'李钟尉',1)
4
select a.bookName,b.bookTypeName from t_book a,t_bookType b where a.bookTypeId=b.id
5
select * from t_book a,t_bookType b
6
select * from t_book a,t_bookType b where a.bookTypeId = b.id
7
SELECT * from t_book left JOIN t_bookType on t_book.bookTypeId= t_bookType.id
8
select * from t_book where bookTypeId in (select id from t_bookType WHERE bookTypeName in ('教育类','计算机类')
9
select * from t_book where price >(select avg(price) from t_book)
10
select a.bookName,b.bookTypeName from t_book a,t_bookType b where a.bookTypeId=b.id
11
delete from t_book where bookTypeId not in (select id from t_bookType)
SQL语句小练习的更多相关文章
- SQL语句小总结
无论是面试过程中,还是未来工作中,SQL都是一定会考到和用到的.所以,在此对之前看过的一些SQL知识点进行一下总结和记录,算是起到一个笔记本的作用.没有深入学习过SQL的和对SQL印象不太深的朋友可以 ...
- sql语句小记录
测试过程中,需要去数据库中查询一些结果,比如验证码 常用的是查询 更新比较少用 删除一般不用 sql查询语句的嵌套用法,比较实用 比如in的用法:第一种:查询多个值时 SELECT "栏位名 ...
- sql语句小练习一
create database aaa go use aaa go create table student( sno varchar(3), sname varchar(4) not null ...
- SQL语句小tips(持续更新)
统计非法数据 判断people_id是否是32为字母组成的,统计不满足要求的数据 SELECT COUNT(IF(BINARY people_id NOT REGEXP '^[0-9a-z]{32}' ...
- 拼接Sql语句小心得
在往数据库插入数据时,需要根据数据和数据库中的列信息进行拼接,在本篇文章中,输出小心得.使用语言为 python. 拼接原始列信息 比如待插入数据库列信息为 deptNo,dName, Locate, ...
- sql语句小练习二
1.创建一个数据库StudentManage, 初始化大小10M,不足以1M每次增长 create database StudentManage on ( name = 'StudentManag ...
- sql语句 小记录
select Name '姓名',Age '年龄',(select LessonName + ',' from Lesson where StudentId=s1.Id FOR XML PATH('' ...
- 一个自动生成插入与更新SQL语句的小类
无需关注字段类型,只要传入字段名与值的集合,自动生成Ms sql server SQL语句.详见Test()方法 using System; namespace Fan.iData.SqlUtilit ...
- (小技巧)Sql server查看sql语句的执行时间(转)
转自CSDN: 在写数据库sql的时候,我们往往很关心该sql语句的执行效率,如下小技巧可以帮助程序员简单快速的得到某条或某几条sql的执行时间. declare @d datetime set @d ...
随机推荐
- Linux修改war包中文件
rm -rf /tmp/wiq.warcp /u02/wms_dev/wiq-app/wars/wiq.war /tmpcd /tmp jar xvf wiq.war vim WEB-INF/clas ...
- NET Core+MySql+Nginx
NET Core+MySql+Nginx 容器化部署 .NET Core容器化@Docker.NET Core容器化之多容器应用部署@Docker-Compose.NET Core+MySql+Ngi ...
- jsfiddle.net上的记录
1.JQuery: http://jsfiddle.net/uryc1908/ 2.e-chart: http://jsfiddle.net/8fq96a7s/ 3.easyUI http://jsf ...
- Windows1
① 对Windows的设置一般在, 所有设置, 控制面板(control), 管理方式打开此电脑和此电脑上的选项 ② 关闭对账号安全的检验, 在控制面板中, 找到系统和安全, 再找到更改用户账号控制设 ...
- Coroutine(协程)模式与线程
概念 协程(Coroutine)这个概念最早是Melvin Conway在1963年提出的,是并发运算中的概念,指两个子过程通过相互协作完成某个任务,用它可以实现协作式多任务,协程(coroutine ...
- Elasticsearch优化
2.out of memory错误 因为默认情况下es对字段数据缓存(Field Data Cache)大小是无限制的,查询时会把字段值放到内存,特别是facet查询,对内存要求非常高,它会把结果都放 ...
- AJPFX关于JAVA StringBuffer的用法总结
StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和String不同,所以StringBuffer在进行字符串处理时,不生成新的对象,在内存 ...
- CA、公钥、私钥 概要
CA.公钥.私钥 概要 现在在开发中遇到一个需求,需要使用tls加密技术,之前并没有了解过,这里来做一个关于CA,公钥,密钥的总结,至于怎么生成这儿就不讲了,如果有机会可以再开一个单章来讲一下. 现在 ...
- Oracle创建用户、表(1)
Oracle创建用户.表(1) 1. 连接 C:\Users\LEI>sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on ...
- 剑指offer课外两道习题解法
1.定义一个函数,删除字符串中所有重复出现的字符,例如输入“google”,删除重复的字符之后的结果为“gole”. 解题思路:像这种求字符串的重复字符,并且去掉重复字符,我们一般可以用哈希 ...