MySQL查询示例
use test;
create table t1(
tid smallint(5) unsigned auto_increment,
tname varchar(50),
tkecheng varchar(50),
tgrade smallint(10),
primary key(tid)
)ENGINE=innodb default charset=utf8;
INSERT into t1(tname,tkecheng,tgrade)
values('xm','yuwen',76),
('xm','shuxue',89),
('xm1','yuwen',73),
('xm1','shuxue',84),
('xm2','yuwen',72),
('xm2','shuxue',88),
('xm3','yuwen',70),
('xm3','shuxue',69),
('xm4','yuwen',69),
('xm4','shuxue',79),
('xm5','yuwen',76),
('xm5','shuxue',78),
('xm6','yuwen',84),
('xm6','shuxue',83),
('xm7','yuwen',76),
('xm7','shuxue',68),
('xm8','yuwen',84),
('xm8','shuxue',78),
('xm9','yuwen',76),
('xm9','shuxue',98),
('xm10','yuwen',84),
('xm10','shuxue',78),
('xm11','yuwen',86),
('xm11','shuxue',68);
commit;
select * from t1;
#1 数学成绩最高的前10条记录,按数学成绩降序排列
select * from t1 where t1.tkecheng='shuxue' order by t1.tgrade desc limit 10;
#2 查询所有科目都在80分以上记录
select * from t1 where t1.tgrade>=80;
s(sno,sn,sd,sa)sno,sn,sd,sa分别代表学号,学员姓名,班级,学员年龄
c(cno,cn)cno,cn分别代表课程编号,课程名称
sc(sno,cno,g)sno,cno,g分别代表学号,所选的课程编号,学习成绩
create table s(
sno smallint(5),
sn varchar(50),
sd varchar(50),
sa smallint(10)
)ENGINE=innodb default charset=utf8;
insert into s(sno,sn,sd,sa)
values(1001,'小明','班级1',24),
(1002,'小赵','班级1',22),
(1003,'小黄','班级2',23),
(1004,'小张','班级2',25),
(1005,'小李','班级3',23),
(1006,'小罗','班级3',22),
(1007,'小增','班级3',25);
commit;
create table c(
cno smallint(5),
cn varchar(50)
)ENGINE=innodb default charset=utf8;
insert into c(cno,cn)
values(9001,'功能测试'),
(9002,'自动化测试'),
(9003,'性能测试'),
(9004,'安全性测试'),
(9005,'体验性测试'),
(9006,'全栈测试');
commit;
create table sc(
sno smallint(5),
cno varchar(50),
g varchar(50)
)ENGINE=innodb default charset=utf8;
insert into sc(sno,cno,g)
values(1001,9001,78),
(1001,9002,68),
(1001,9003,84),
(1001,9004,62),
(1001,9005,98),
(1001,9006,89),
(1002,9001,68),
(1002,9002,64),
(1002,9003,83),
(1002,9004,63),
(1002,9005,90),
(1003,9003,68),
(1004,9004,99),
(1005,9005,99),
(1006,9001,69),
(1006,9002,67),
(1006,9003,86),
(1006,9004,87),
(1006,9005,90),
(1006,9006,91),
(1007,9001,99);
commit;
1)查询选修课程名称为‘性能测试’的学员学号和姓名?
select s.sno,s.sn from s,sc,c
where s.sno=sc.sno
and sc.cno=c.cno
and c.cn='性能测试';
2)查询选修课程超过5门的学员学号和所属班级?
select s.sno,s.sd from s
where s.sno
in (
select sc.sno
from c,sc
where c.cno=sc.cno
group by sc.sno
having count(*)>5
);
3)用户名为xuelei在2013-09-16和2013-09-17天插入的任务。
任务名包含"Arrow",文件大小大于200
按文件由大到小排序,只提取出前5条数据
create table User_task(
Username varchar(50) comment '用户名',
Taskid int comment '任务id',
Taskname varchar(50) comment '任务名',
Task_filesize int comment '文件大小',
Insert_time datetime comment '插入日期'
)ENGINE=innodb default charset=utf8;
insert into User_task(Username,Taskid,Taskname,Task_filesize,Insert_time)
values('xuelei',1001,'Arrow is not a ',200,str_to_date('2013-09-15 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1002,'hao Arrow is not b ',201,str_to_date('2013-09-16 09:00:01', '%Y-%m-%d %H:%i:%S')),
('xuelei',1003,'cc Arrow is not c ',203,str_to_date('2013-09-17 09:01:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1004,'ddArrow is not d ',204,str_to_date('2013-09-18 09:00:02', '%Y-%m-%d %H:%i:%S')),
('xuelei',1005,'efArrow is not e ',203,str_to_date('2013-09-19 09:20:00', '%Y-%m-%d %H:%i:%S')),
('ceshi',2001,'agbrrow is not a ',203,str_to_date('2013-09-16 09:10:00', '%Y-%m-%d %H:%i:%S')),
('ceshi',2002,'brrow is not b ',203,str_to_date('2013-09-16 16:20:00', '%Y-%m-%d %H:%i:%S')),
('ceshi',2003,'brrow is not c ',203,str_to_date('2013-09-15 09:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',2002,'Afrrow is not b ',303,str_to_date('2013-09-16 16:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',2003,'arrow is not c ',303,str_to_date('2013-09-16 09:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',3001,'Acrrow is not a ',200,str_to_date('2013-09-15 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',3002,'AArrow is not b ',201,str_to_date('2013-09-16 09:00:01', '%Y-%m-%d %H:%i:%S')),
('xuelei',3003,'aaArrow is not c ',203,str_to_date('2013-09-17 09:01:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',3004,'Arrow is not d ',204,str_to_date('2013-09-18 09:00:02', '%Y-%m-%d %H:%i:%S')),
('xuelei',3005,'Acrrow is not e ',203,str_to_date('2013-09-19 09:20:00', '%Y-%m-%d %H:%i:%S')),
('ceshi',4001,'brrow is not a ',203,str_to_date('2013-09-20 09:10:00', '%Y-%m-%d %H:%i:%S')),
('ceshi',4003,'brrow is not c ',203,str_to_date('2013-09-22 09:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',5002,'Arrow is not b ',303,str_to_date('2013-09-23 16:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',5003,'arrow is not c ',303,str_to_date('2013-09-24 09:20:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1011,'Arrow is not c ',201,str_to_date('2013-09-19 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1008,'arrow is not a ',199,str_to_date('2013-09-15 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1009,'arrow is not b ',200,str_to_date('2013-09-15 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1010,'arrow is not c ',201,str_to_date('2013-09-15 09:00:00', '%Y-%m-%d %H:%i:%S')),
('xuelei',1012,'Arrow is not b ',201,str_to_date('2013-09-15 23:59:59', '%Y-%m-%d %H:%i:%S')),
('xuelei',1013,'Arrow is not c ',201,str_to_date('2013-09-17 23:59:59', '%Y-%m-%d %H:%i:%S'));-
('xuelei',1014,'what is a Arrow is not c ',202,str_to_date('2013-09-17 23:59:59', '%Y-%m-%d %H:%i:%S'));
('xuelei',1015,' Arrow Arrow Arrow',203,str_to_date('2013-09-17 23:59:59', '%Y-%m-%d %H:%i:%S'));
commit;
select * from User_task ut
where ut.username='xuelei'
and INSTR(ut.Taskname,binary 'Arrow')<>0
and ut.task_filesize>200
and date_format(ut.insert_time,'%Y-%m-%d') between '2013-09-16' and '2013-09-17'
order by ut.task_filesize
desc limit 5;
MySQL查询示例的更多相关文章
- [转]向facebook学习,通过协程实现mysql查询的异步化
FROM : 通过协程实现mysql查询的异步化 前言 最近学习了赵海平的演讲,了解到facebook的mysql查询可以进行异步化,从而提高性能.由于facebook实现的比较早,他们不得不对php ...
- MySQL查询LIKE如何匹配下划线 通配符转义
MySQL查询时使用LIKE匹配下划线,您会发现连查询“%A_B%”时会出现“%A B%”和“%AB%”也查询出来了,这是因为下划线也被当作特殊字符,做了任意匹配转换了,所以,要想匹配下划线,那么就需 ...
- mysql查询缓存打开、设置、参数查询、性能变量意思
http://blog.sina.com.cn/s/blog_75ad10100101by7j.html http://www.cnblogs.com/zemliu/archive/2013/08/0 ...
- MySQL查询数据表中数据记录(包括多表查询)
MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...
- MyBatis 查询示例
环境搭建 数据库schema 1)datasource.xml配置 <?xml version="1.0" encoding="UTF-8"?> & ...
- MySQL查询高速缓冲
对mysql的优化不在行,搞过几次优化,但是都不是很理想,还是浪费资源太多.一直发现我的mysql的缓存命中率极差,情况良好的时候到达过60-70%,但是运行时间一长,只有10-20%.查了一些资料, ...
- Mysql语句示例
Mysql语句示例 最常用 sql 语句总结 前言 Mysql 是数据库开发使用的主要平台之一.sql 的学习掌握与使用是数据库开发的基础,此处展示详细sql 语句的写法,及各种功能下的 sql 语句 ...
- mysql查询、子查询、连接查询
mysql查询.子查询.连接查询 一.mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询. group by子句(分组):按照“属性名”指定的字段进行分组.gr ...
- MySQL 查询性能优化 - EXPLAIN 命令
查询优化的官方文档在 这里. EXPLAIN 的输出格式 译文 1. MySQL 架构 1.1 MySQL 的简化架构 MySQL 可以简单的分为三层:连接层.服务层.存储引擎层.其中服务层包含了 M ...
随机推荐
- 关于System类中out属性 实例化的问题
System类中out属性的声明是这样的: public final static PrintStream out = nullPrintStream(); private static PrintS ...
- linux私有ftp搭建与创建新用户
一.私有ftp搭建 以后补充 1. 搭建 2.修改配置文件 二.创建新用户 在linux搭建好私有ftp后,默认存放目录是 /var/ftp/ 我们有时候需要给外部公司之类的用,但又不想让他们直接在 ...
- android fragment ontouch 事件
由于fragment是存在于activity之中的,所以触摸事件会被activity首先得到. 为了在fragment中执行ontouch方法,需要做如下处理: mFragment = new Tab ...
- 权限验证MVC
http://www.jb51.net/article/20147.htm 引用 <authentication mode="Forms"><!--权限受到阻碍 ...
- Android权限之三共享UID和签名
http://blog.csdn.net/a345017062/article/details/6236263 共享UID 安装在设备中的每一个Android包文件(.apk)都会被分配到一个属于自己 ...
- 洛谷P1831 杠杆数
P1831 杠杆数 题目描述 如果把一个数的某一位当成支点,且左边的数字到这个点的力矩和等于右边的数字到这个点的力矩和,那么这个数就可以被叫成杠杆数. 比如4139就是杠杆数,把3当成支点,我们有这样 ...
- 【JOI Camp 2015】IOIO卡片占卜——最短路
题目 [题目描述]K 理事长是占卜好手,他精通各种形式的占卜.今天,他要用正面写着 `I` ,背面写着 `O` 的卡片占卜一下日本 IOI 国家队的选手选择情况.占卜的方法如下:1. 首先,选取五个正 ...
- IT兄弟连 JavaWeb教程 AJAX的技术构成
Ajax并不是新的技术,而是之前技术的整合,其中包括JavaScript.HTML.CSS.DOM.XMLHttpRequest.XML和JSON是构成Ajax技术体系技术基石. JavaScript ...
- 如何使用Xshell连接VMware上的Linux虚拟机
前序:最近开始研究Hadoop平台的搭建,故在本机上安装了VMware workstation pro,并创建了Linux虚拟机(centos系统),为了方便本机和虚拟机间的切换,准备使用Xshell ...
- EF下使用自定义的connectionString避免数据库密码泄露
在使用EF框架时,缺省情况下数据库访问字串是明码存放在app.config或web.config中的,相当于让数据库裸奔. 实际上EF在创建数据实体时,可以指定连接字串,取代在app.config中读 ...