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 的基本的不能再基本的优化方法. 为了 ...
随机推荐
- Leetcode Find Minimum in Rotated Sorted Array I and II
Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...
- bzoj2959: 长跑
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- UTF-8有签名和无签名的区别
当有签名的UTF-8编码内容被解析器解析时,解析器直接根据签名即可判断出使用UTF-8编码来进行解析,当无签名时,解析器会根据内容的编码来进行判别.所以,有签名的将更容易被解析器以正确的编码方式进行解 ...
- 浅析C# new和override的区别
C#中new和override是继承中经常用到的两个关键字,但是往往有时候容易把这两个关键字的作用搞混淆. new C# new关键字表示隐藏,是指加上new关键字的属性或函数将对本类和继承类隐藏基类 ...
- python 生成器和递归
生成器 1.定义 问题:python会把对象放到内存中,我们每次定义变量.列表等都会在内存中占用对应的地址块,所以当内存容量一定时,列表的容量会受到内存的限制,而且假如我们创建了一个包含200万个元素 ...
- Spring MVC exception - Invoking request method resulted in exception : public static native long java.lang.System.currentTimeMillis()
最近在线上系统发现下面的异常信息: 2014-10-11 11:14:09 ERROR [org.springframework.web.servlet.mvc.annotation.Annotati ...
- AngularJs $resource 高大上的数据交互
$resource 创建一个resource对象的工厂函数,可以让你安全的和RESFUL服务端进行数据交互. 需要注入 ngResource 模块.angular-resource[.min].js ...
- POJ 2559 Largest Rectangle in a Histogram(单调栈)
传送门 Description A histogram is a polygon composed of a sequence of rectangles aligned at a common ba ...
- 总结的一些网站利于搜索引擎优化的小常识及SEO优化
网站利于搜索引擎优化的小常识 1. 尽量用独立IP和空间原因:同IP下其他网站受罚,可能会对你站有影响.如果你的站和很多垃圾.色情站同在一个服务器,搜索引擎会喜欢吗? 2. 做不同内容网站时,避免使用 ...
- BZOJ1031: [JSOI2007]字符加密Cipher
传送门 后缀数组模板题 //BZOJ 1031 //by Cydiater //2016.9.21 #include <iostream> #include <cstring> ...