mysql 简单练习
1.查找全部学生的信息
[SQL]select * from student
受影响的行: 0
时间: 0.000s
2.查出成绩及格的所有人
[SQL]select * from student where StudentNo in (select StudentNo from result where StudentResult > 60)
受影响的行: 0
时间: 0.001s
3.查出所有指定年级的同学
[SQL]select * from student where GradeId in (1,2)
受影响的行: 0
时间: 0.001s
4.查出“赵”姓同学
[SQL]select * from student where StudentName like '赵%'
受影响的行: 0
时间: 0.000s
5.学生按学号降序查询出所有学生
[SQL]select * from student ORDER BY StudentNo desc
受影响的行: 0
时间: 0.001s
6.学生按住址升/降序排序查询
[SQL]select * from student ORDER BY Address asc
受影响的行: 0
时间: 0.001s
[SQL]select * from student ORDER BY Address desc
受影响的行: 0
时间: 0.001s
7.查询输出4条学生信息
[SQL]select * from student limit 4
受影响的行: 0
时间: 0.001s
8.查询输出第2条至第7条学生信息
[SQL]select * from student limit 1,6
受影响的行: 0
时间: 0.001s
9.求出全班平均分数
[SQL]select avg(StudentResult) from result
受影响的行: 0
时间: 0.001s
10.全校有多少学生
[SQL]select Count(*) from student
受影响的行: 0
时间: 0.000s
11.通过分组查询统计地址不同的学生人数
[SQL]select Address,Count(*) as `人数` from student GROUP BY Address
受影响的行: 0
时间: 0.011s
12.通过分组查询统计每学科的总分
[SQL]select s.SubjectName,SubjectNo,sum(StudentResult) as `总分` from result r LEFT join `subject` s on r.SubjectNo = s.SubjectId GROUP BY SubjectNo,s.SubjectName
受影响的行: 0
时间: 0.001s
13.通过分组查询得到总分在90分以上的学科
select s.SubjectName,SubjectNo,sum(StudentResult) as `zs` from result r LEFT join `subject` s on r.SubjectNo = s.SubjectId GROUP BY SubjectNo,s.SubjectName
having zs > 90
14.内连接查询学生表和年级表
[SQL]select * from student s join grand g on s.GradeId = g.GrandId
受影响的行: 0
时间: 0.001s
15.左/右连接查询成绩表和科目表
[SQL]select * from result r left join `subject` s on r.SubjectNo = s.SubjectId
受影响的行: 0
时间: 0.002s
16.为学生表和班级表连接查询的结果创建视图
[SQL]create or replace view view1
as
select *
from student s
left join grand g on s.GradeId = g.GrandId
受影响的行: 0
时间: 0.014s
17.为“上海”的学生创建视图
[SQL]create or replace view view2
as
select *
from student
where Address = '上海'
受影响的行: 0
时间: 0.008s
18.建立订单表及商品表,建立主外键关系
[SQL]create table g(
`id` int PRIMARY key not null AUTO_INCREMENT,
`Name` VARCHAR(50) not null,
`Num` int not null DEFAULT 0
)
受影响的行: 0
时间: 0.017s
[SQL]create table o(
`oid` int PRIMARY key not null AUTO_INCREMENT,
`gid` int not null,
`much` int not null,
KEY `fk3` (`gid`),
CONSTRAINT `fk3` FOREIGN KEY (`gid`) REFERENCES g (`id`)
)
受影响的行: 0
时间: 0.017s
19新增数据
20.新建insert触发器、delete触发器、update触发器
[SQL]create TRIGGER trg_1
AFTER INSERT on o
for EACH ROW
BEGIN
UPDATE g SET num = num - new.much where id = new.gid;
END;
受影响的行: 0
时间: 0.039s
[SQL]INSERT into o values(1,1,2)
受影响的行: 1
时间: 0.001s
[SQL]create TRIGGER trg_2
AFTER DELETE on o
for EACH ROW
BEGIN
UPDATE g SET num = num + old.much where id = old.gid;
END;
受影响的行: 0
时间: 0.032s
[SQL]delete from o where oid = 1
受影响的行: 1
时间: 0.000s
[SQL]create TRIGGER trg_3
AFTER update on o
for EACH ROW
BEGIN
UPDATE g SET num = num + old.much-new.much where id = new.gid;
END;
受影响的行: 0
时间: 0.029s
[SQL]update o set much =3 where oid =1
受影响的行: 1
时间: 0.001s
mysql 简单练习的更多相关文章
- python(pymysql)之mysql简单操作
一.mysql简单介绍 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库 ...
- Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(二)
然后是项目下的文件:完整的项目请看 上一篇 Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(一) 项目下的springmvc-servlet.xml配置文件: ...
- JAVA使用jdbc连接MYSQL简单示例
以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...
- mysql简单主从复制(一)
MYSQL简单主从复制 master:172.25.44.1 slave:172.25.44.2 mysql5.7安装 master和slave均操作 准备rpm包:mysql-5.7.17-1.el ...
- MySql 简单统计查询消耗时间脚本
MySql 简单统计查询消耗时间脚本 by:授客 QQ:1033553122 drop procedure if exists selectTime; delimiter; create proced ...
- MySQL简单查询详解-单表查询
MySQL简单查询详解-单表查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询的执行路径 一条SQL查询语句的执行过程大致如下图所示: 1>.客户端和服务端通过my ...
- Gin实战:Gin+Mysql简单的Restful风格的API(二)
上一篇介绍了Gin+Mysql简单的Restful风格的API,但代码放在一个文件中,还不属于restful风格,接下来将进行进一步的封装. 目录结构 ☁ gin_restful2 tree . ├─ ...
- Mysql基本操作、C++Mysql简单应用、PythonMysql简单应用
MySql基本操作 -- 当指定名称的数据库不存在时创建它并且指定使用的字符集和排序方式 CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET UTF ...
- SSH整合框架+mysql简单的实现
SSH整合框架+mysql简单的实现 1. 框架整合原理: struts2整合Spring 两种: 一种struts2自己创建Action,自动装配Service : 一种 将Action交给Spri ...
- mysql简单优化思路
mysql简单优化思路 作为开发人员,数据库知识掌握的可能不是很深入,但是一些基本的技能还是要有时间学习一下的.作为一个数据库菜鸟,厚着脸皮来总结一下 mysql 的基本的不能再基本的优化方法. 为了 ...
随机推荐
- Python中的GIL
•start 线程准备就绪,等待CPU调度 •setName 为线程设置名称 •getName 获取线程名称 •setDaemon 设置为后台线程或前台线程(默认) 如果是后台线程,主线程执行过程中, ...
- Maven报错: Missing artifact jdk.tools:jdk.tools:jar:1.7
pom.xml 有小红叉,报错: Missing artifact jdk.tools:jdk.tools:jar:1.7 解决方法:(缺少一个jar包) http://blog.csdn.net/u ...
- BZOJ1407 [Noi2002]Savage
Description Input 第1行为一个整数N(1<=N<=15),即野人的数目. 第2行到第N+1每行为三个整数Ci, Pi, Li表示每个野人所住的初始洞穴编号,每年走过的洞穴 ...
- 硬盘分区时GPT和MBR的区别/选择
最明显的区别是MBR最大支持2T的硬盘,而GPT则更大. 1.最先出现在Windows8中设置新磁盘,系统会询问你是想要使用MBR还是GPT分区,GPT是一种新的硬盘分区标准.GPT带来了很多新特性, ...
- 对接微信红包时:CA证书出错,请登录微信支付商户平台下载证书
今天在对接微信支付的微信红包发放时,出现““CA证书出错,请登录微信支付商户平台下载证书”的错误,特此记录一下: 如果你也在对接微信红包,并且你也在这个页面上下载了demo,再就是你也参照了里面的文档 ...
- genymotion访问电脑的localhost
用来进行android测试时使用genymotion,genymotion是运行在virtualbox中的,virtualbox为两者建立了连接,在linux下通过ifconfig可以看到有一个叫做v ...
- [NOIP2012] 提高组 洛谷P1079 Vigenère 密码
题目描述 16 世纪法国外交家 Blaise de Vigenère 设计了一种多表密码加密算法――Vigenère 密 码.Vigenère 密码的加密解密算法简单易用,且破译难度比较高,曾在美国南 ...
- ExceptionLess新玩法 -- 审计日志
审计日志 这算是一个挺酷的功能,把每个请求都记录下来,之前在abp中看到过这个功能,配合可视化的界面,简直是在装逼 看到了exceptionless后,心念一动,我也可以根据它做一个审计日志的功能.这 ...
- opencv 简单模糊和高斯模糊 cvSmooth
cv::Mat 是C++版OpenCV的新结构. cvSmooth() 是老版 C API. 没有把C接口与C + + 结合. 建议你们也可以花一些时间看一下介绍. 同样,你如果查看opencv/mo ...
- 区别 Jquery对象和Dom对象
在讨论之前,先约定好定义变量的风格. 如果获取的对象是jQuery对象,那么在变量前加上$,例如: var $variable = jQuery对象; 如果获取的是DOM对象,则定义如下: var v ...