MySql经典50道SQL练习题_mysql sql题目_长头发的程序猿的博客-程序员秘密

技术标签: mysql  数据库  sql  

一、准备工作

1、学生表 Student(SId,Sname,Sage,Ssex)

SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别

create table Student(SId varchar(10),Sname varchar(10),Sage datetime,Ssex varchar(10));
insert into Student values('01' , '赵雷' , '1990-01-01' , '男');
insert into Student values('02' , '钱电' , '1990-12-21' , '男');
insert into Student values('03' , '孙风' , '1990-05-20' , '男');
insert into Student values('04' , '李云' , '1990-08-06' , '男');
insert into Student values('05' , '周梅' , '1991-12-01' , '女');
insert into Student values('06' , '吴兰' , '1992-03-01' , '女');
insert into Student values('07' , '郑竹' , '1989-07-01' , '女');
insert into Student values('09' , '张三' , '2017-12-20' , '女');
insert into Student values('10' , '李四' , '2017-12-25' , '女');
insert into Student values('11' , '李四' , '2017-12-30' , '女');
insert into Student values('12' , '赵六' , '2017-01-01' , '女');
insert into Student values('13' , '孙七' , '2018-01-01' , '女');

2、课程表 Course(CId,Cname,TId)

CId 课程编号,Cname 课程名称,TId 教师编号

create table Course(CId varchar(10),Cname nvarchar(10),TId varchar(10));
insert into Course values('01' , '语文' , '02');
insert into Course values('02' , '数学' , '01');
insert into Course values('03' , '英语' , '03');

3、教师表 Teacher(TId,Tname)

TId 教师编号,Tname 教师姓名

create table Teacher(TId varchar(10),Tname varchar(10));
insert into Teacher values('01' , '张三');
insert into Teacher values('02' , '李四');
insert into Teacher values('03' , '王五');

4、成绩表 SC(SId,CId,score)

SId 学生编号,CId 课程编号,score 分数

create table SC(SId varchar(10),CId varchar(10),score decimal(18,1));
insert into SC values('01' , '01' , 80);
insert into SC values('01' , '02' , 90);
insert into SC values('01' , '03' , 99);
insert into SC values('02' , '01' , 70);
insert into SC values('02' , '02' , 60);
insert into SC values('02' , '03' , 80);
insert into SC values('03' , '01' , 80);
insert into SC values('03' , '02' , 80);
insert into SC values('03' , '03' , 80);
insert into SC values('04' , '01' , 50);
insert into SC values('04' , '02' , 30);
insert into SC values('04' , '03' , 20);
insert into SC values('05' , '01' , 76);
insert into SC values('05' , '02' , 87);
insert into SC values('06' , '01' , 31);
insert into SC values('06' , '03' , 34);
insert into SC values('07' , '02' , 89);
insert into SC values('07' , '03' , 98);

二、题目

#1、查询" 01 “课程比” 02 “课程成绩高的学生的信息及课程分数

#2、查询同时存在” 01 “课程和” 02 “课程的情况

#3、查询存在” 01 “课程但可能不存在” 02 “课程的情况(不存在时显示为 null )

#4、查询不存在” 01 “课程但存在” 02 "课程的情况

#5、查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩

#6、查询在 SC 表存在成绩的学生信息

#7、查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩(没成绩的显示为 null )

#8、查有成绩的学生信息

#9、查询「李」姓老师的数量

#10、查询学过「张三」老师授课的同学的信息

#11、查询没有学全所有课程的同学的信息

#12、查询至少有一门课与学号为" 01 "的同学所学相同的同学的信息

#13、查询和" 01 "号的同学学习的课程 完全相同的其他同学的信息

#14、查询没学过"张三"老师讲授的任一门课程的学生姓名

#15、查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩

#16、检索" 01 "课程分数小于 60,按分数降序排列的学生信息

#17、按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩

#18、查询各科成绩最高分、最低分和平均分

#19、以如下形式显示:课程 ID,课程 name,及格率,中等率,优良率,优秀率;及格为>=60,中等为:70-80,优良为:80-90,优秀为:>=90

#20、按各科成绩进行排序,并显示排名, Score 重复时保留名次空缺

#21、按各科成绩进行排序,并显示排名, Score 重复时合并名次

#22、要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列

#23、查询学生的总成绩,并进行排名

#24、查询每个学生的总成绩,平均分以及最高分

#25、统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[60-0] 及所占百分比

#26、查询各科成绩前三名的记录

#27、查询每门课程被选修的学生数

#28、查询出只选修两门课程的学生学号和姓名

#29、查询男生、女生人数

#30、查询名字中含有「风」字的学生信息

#31、查询同名同性学生名单,并统计同名人数

#32、查询 1990 年出生的学生名单

#33、查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列

#34、查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩

#35、查询课程名称为「数学」,且分数低于 60 的学生姓名和分数

#36、查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况)

#37、查询任何一门课程成绩在 70 分以上的姓名、课程名称和分数

#38、查询不及格的课程

#39、查询课程编号为 01 且课程成绩在 80 分以上(包括80分)的学生的学号和姓名

#40、求每门课程的学生人数

#41、成绩不重复,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

#42、成绩有重复的情况下,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

#43、查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩

#44、统计每门课程的学生选修人数(超过 5 人的课程才统计)

#45、检索至少选修两门课程的学生学号

#46、查询选修了全部课程的学生信息

#47、查询本周过生日的学生

#48、查询下周过生日的学生

#49、查询本月过生日的学生

#50、查询下月过生日的学生

三、答案

#1、查询" 01 “课程比” 02 “课程成绩高的学生的信息及课程分数

SELECT t1.sid, t1.score AS class1,t2.score AS class2 FROM
(SELECT sid,cid,score FROM sc WHERE cid = '01') t1,
(SELECT sid,cid,score FROM sc WHERE cid = '02') t2
WHERE t1.sid = t2.sid AND t1.score > t2.score

#2、查询同时存在” 01 “课程和” 02 “课程的情况

SELECT sc.SId,st.Sname FROM sc
INNER JOIN student st
ON sc.SId = st.SId
WHERE sc.CId = '01' 
AND sc.SId IN(SELECT SId FROM sc WHERE CId = '02')

#3、查询存在” 01 “课程但可能不存在” 02 “课程的情况(不存在时显示为 null )

SELECT t1.SId,t1.CId,t1.score,t2.SId,t2.CId,t2.score 
FROM  (SELECT SId,CId,score FROM sc WHERE sc.cid = '01') t1
LEFT JOIN (SELECT SId,CId,score FROM sc WHERE sc.cid = '02') t2
ON t1.sid = t2.sid

#4、查询不存在” 01 “课程但存在” 02 "课程的情况

SELECT sc.SId,st.Sname FROM sc
INNER JOIN student st
ON sc.SId = st.SId
WHERE sc.CId = '02' 
AND sc.SId NOT IN(SELECT SId FROM sc WHERE CId = '01')

#5、查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩

SELECT s.SId AS student_SId,s.Sname,AVG(sc.score)
FROM student s
INNER JOIN sc 
ON s.SId = sc.SId
WHERE sc.score >= 60
GROUP BY student_SId

#6、查询在 SC 表存在成绩的学生信息

SELECT SId,Sname,Sage,Ssex FROM student WHERE SId IN(
SELECT SId FROM sc GROUP BY(SId))

#7、查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩(没成绩的显示为 null )

SELECT st.SId,st.Sname,SUM(sc.CId),SUM(sc.score) FROM student st
LEFT JOIN sc
ON st.SId = sc.SId
GROUP BY(st.SId)

#8、查有成绩的学生信息

SELECT SId,Sname,Sage,Ssex FROM student 
WHERE SId IN(SELECT SId FROM sc GROUP BY(SId))

#9、查询「李」姓老师的数量

SELECT count(*) FROM teacher WHERE Tname LIKE '李%'

#10、查询学过「张三」老师授课的同学的信息

SELECT SId,Sname,Sage,Ssex FROM student WHERE SId IN(
SELECT SId FROM sc WHERE CId IN (
SELECT CId FROM course WHERE TId IN (
SELECT TId FROM teacher WHERE Tname = '张三')))

#11、查询没有学全所有课程的同学的信息

SELECT SId,Sname,Sage,Ssex FROM student WHERE SId NOT IN
(SELECT SId FROM sc 
GROUP BY SId
HAVING COUNT(CId) = (SELECT COUNT(Cname) FROM course)) 

#12、查询至少有一门课与学号为" 01 "的同学所学相同的同学的信息

SELECT SId,Sname,Sage,Ssex FROM student
WHERE SId IN (
SELECT SId FROM sc WHERE CId IN(
SELECT CId FROM sc WHERE SId = '01')
GROUP BY SId)

#13、查询和" 01 "号的同学学习的课程 完全相同的其他同学的信息

SELECT st.SId,st.Sname,st.Sage,st.Ssex 
FROM sc
INNER JOIN student st
ON sc.SId = st.SId 
WHERE sc.CId IN (SELECT cid FROM sc WHERE SId = '01')
AND sc.SId != '01'
GROUP BY sc.SId
HAVING COUNT(sc.SId) = (Select count(cid) from sc where sid = '01')

#14、查询没学过"张三"老师讲授的任一门课程的学生姓名

SELECT st.SId,st.sname FROM student st
WHERE st.sname NOT IN 
(SELECT st.sname FROM student st
INNER JOIN sc 
ON st.sid = sc.sid
INNER JOIN course c
ON sc.cid = c.cid
INNER JOIN teacher t
ON c.tid = t.tid
WHERE t.tname = '张三')

#15、查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩

SELECT st.SId,st.Sname,AVG(sc.score) FROM student st
INNER JOIN sc
ON st.SId = sc.SId
WHERE sc.score < 60
GROUP BY sc.SId
HAVING COUNT(sc.CId) >= 2

#16、检索" 01 "课程分数小于 60,按分数降序排列的学生信息

SELECT s.SId,s.Sname,s.Sage,s.Ssex 
FROM student s 
INNER JOIN sc
ON s.SId = sc.SId 
AND sc.CId = '01' 
AND sc.score < 60
ORDER BY sc.score

#17、按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩

SELECT sc.sid,t1.avg_score,sc.cid,sc.score FROM sc
LEFT JOIN (SELECT sid,avg(score) AS avg_score,cid,score FROM sc GROUP BY sid) t1
ON sc.sid = t1.sid
GROUP BY t1.avg_score DESC

#18、查询各科成绩最高分、最低分和平均分

SELECT c.Cname,MAX(sc.score),MIN(sc.score),AVG(sc.score) 
FROM course c
INNER JOIN sc
ON c.CId = sc.CId
GROUP BY(sc.CId)

#19、以如下形式显示:课程 ID,课程 name,及格率,中等率,优良率,优秀率;及格为>=60,中等为:70-80,优良为:80-90,优秀为:>=90

SELECT sc.cid,c.cname,
sum(case when sc.score>=60 then 1 else 0 end)/count(sc.score) AS '及格',
sum(case when sc.score between 70 and 80 then 1 else 0 end)/count(sc.score) AS '中等',
sum(case when sc.score between 80 and 90 then 1 else 0 end)/count(sc.score) AS '优良',
sum(case when sc.score>=90 then 1 else 0 end)/count(sc.score) AS '优秀'
FROM sc
INNER JOIN course c
ON sc.cid = c.cid
GROUP BY sc.cid

#20、按各科成绩进行排序,并显示排名, Score 重复时保留名次空缺

SELECT a.cid, a.sid, a.score, count(b.score)+1 AS rank
FROM sc AS a
LEFT JOIN sc AS b
ON a.score<b.score AND a.cid = b.cid
GROUP BY a.cid, a.sid,a.score
ORDER BY a.cid, rank ASC;

#21、按各科成绩进行排序,并显示排名, Score 重复时合并名次

SELECT *,
CASE WHEN @sco=score THEN @rank ELSE @rank:[email protected]+1 END AS rn,
@sco:=score
FROM sc,(SELECT @rank:=0,@sco:=NULL) t
ORDER BY score DESC;

#22、要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列

SELECT cid, count(sid) FROM sc
GROUP BY cid
ORDER BY count(sid) DESC,cid ASC
SELECT cid, count(sid) FROM sc
GROUP BY cid
ORDER BY 2 DESC,1 ASC

#23、查询学生的总成绩,并进行排名

SELECT sc.SId,st.Sname,SUM(score)
FROM sc
INNER JOIN student st
ON sc.SId = st.SId
GROUP BY SId
ORDER BY SUM(score) DESC

#24、查询每个学生的总成绩,平均分以及最高分

SELECT sc.SId,st.Sname,SUM(score),AVG(score),MAX(score) 
FROM sc
INNER JOIN student st
ON sc.SId = st.SId
GROUP BY SId

#25、统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[60-0] 及所占百分比

SELECT CId,
ROUND((SUM(CASE WHEN score BETWEEN 85 AND 100 THEN 1 ELSE 0 END)/COUNT(SId)),2) AS '[100-85]',
ROUND((sum(case when score between 70 and 85 then 1 else 0 end)/count(sid)),2) AS '[85-70]',
ROUND((sum(case when score between 60 and 70 then 1 else 0 end)/count(sid)),2) AS '[70-60]',
ROUND((sum(case when score between 0 and 60 then 1 else 0 end)/count(sid)),2) AS '[60-0]'
FROM sc 
GROUP BY CId

#26、查询各科成绩前三名的记录

SELECT CO.cname '课程',
(SELECT sc.SId
   FROM sc
  WHERE sc.CId = co.CId
  ORDER BY sc.score Desc LIMIT 0, 1) '第一名',
(SELECT sc.SId
   FROM sc
  WHERE sc.CId = co.CId
  ORDER BY sc.score Desc LIMIT 1, 1) '第二名',
	(SELECT sc.SId
   FROM sc
  WHERE sc.CId = co.CId
  ORDER BY sc.score Desc LIMIT 2, 1) '第三名'
FROM course co;

#27、查询每门课程被选修的学生数

SELECT sc.CId,COUNT(sc.SId) AS '被选修的学生数' FROM sc GROUP BY(sc.CId)

#28、查询出只选修两门课程的学生学号和姓名

SELECT sc.SId,st.Sname,COUNT(sc.CId) AS cidCount,sc.score 
FROM sc 
INNER JOIN student st
ON sc.SId = st.SId
GROUP BY SId
HAVING cidCount = 2

#29、查询男生、女生人数

SELECT COUNT(*) AS '男生、女生人数' FROM student GROUP BY(Ssex)
SELECT count(DISTINCT t1.sid) 男,count(DISTINCT t2.sid) 女 FROM 
(SELECT sid FROM student WHERE ssex = '男') t1,
(SELECT sid FROM student WHERE ssex = '女') t2

#30、查询名字中含有「风」字的学生信息

SELECT SId,Sname,Sage,Ssex FROM student WHERE Sname LIKE CONCAT('%','风','%')

#31、查询同名同性学生名单,并统计同名人数

SELECT sname, count(*) FROM student
GROUP BY sname
HAVING count(*)>1;
SELECT SId,Sname,Sage,Ssex FROM
(SELECT t1.SId,t1.Sname,t1.Sage,t1.Ssex 
FROM student t1
INNER JOIN student t2
ON t1.sname = t2.sname 
WHERE t1.sid != t2.sid 
GROUP BY t1.sid) a

#32、查询 1990 年出生的学生名单

SELECT SId,Sname,YEAR(Sage) AS SageYear,Ssex FROM student WHERE YEAR(Sage) = '1990'

#33、查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列

SELECT SId,CId,AVG(score) as score_avg FROM sc 
GROUP BY CId
ORDER BY score_avg DESC,CId ASC

#34、查询平均成绩大于等于 85 的所有学生的学号、姓名和平均成绩

SELECT sc.SId,s.Sname,AVG(sc.score) AS Avgscore FROM sc
INNER JOIN student s
ON sc.SId = s.SId
GROUP BY(sc.SId)
HAVING Avgscore >= 85

#35、查询课程名称为「数学」,且分数低于 60 的学生姓名和分数

SELECT s.Sname,sc.score FROM sc
INNER JOIN course c
ON sc.CId = c.CId
INNER JOIN student s
ON s.SId = sc.SId
WHERE c.Cname = '数学'
AND sc.score < 60

#36、查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况)

SELECT st.sid,st.sname,st.Sage,st.Ssex,sc.CId,sc.score 
FROM student st
LEFT JOIN sc
ON st.sid = sc.sid

#37、查询任何一门课程成绩在 70 分以上的姓名、课程名称和分数

SELECT sc.sid,s.Sname,c.Cname,sc.score FROM sc 
INNER JOIN student s
ON sc.SId = s.SId
INNER JOIN course c
ON sc.CId = c.CId
WHERE sc.score > 70 

#38、查询不及格的课程

SELECT sc.sid,s.Sname,c.Cname,sc.score FROM sc 
INNER JOIN course c
ON sc.CId = c.CId
INNER JOIN student s
ON s.SId = sc.SId
WHERE score < 60

#39、查询课程编号为 01 且课程成绩在 80 分以上(包括80分)的学生的学号和姓名

SELECT s.SId,s.Sname,sc.score FROM sc 
INNER JOIN student s
ON sc.SId = s.SId
WHERE sc.CId = '01' AND sc.score >= 80

#40、求每门课程的学生人数

SELECT c.Cname,COUNT(sc.SId) AS '每门课程的学生人数' FROM sc 
INNER JOIN course c 
ON sc.CId = c.CId
GROUP BY(sc.CId)
SELECT sc.cid, COUNT(sc.sid) AS '每门课程的学生人数' FROM sc
GROUP BY sc.cid

#41、成绩不重复,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

SELECT st.SId,st.Sname,st.Sage,st.Ssex,max(sc.score) FROM sc
INNER JOIN course c
ON sc.CId = c.CId
INNER JOIN teacher t
ON c.TId = t.TId AND t.Tname = '张三'
INNER JOIN student st
ON sc.SId = st.SId

#42、成绩有重复的情况下,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

SELECT t1.SId,t1.Sname,t1.Sage,t1.Ssex, t1.score FROM
(SELECT st.SId,st.Sname,st.Sage,st.Ssex, sc.score FROM sc
INNER JOIN course c 
ON sc.cid = c.cid
INNER JOIN teacher t
ON c.tid = t.tid AND t.tname = '张三'
INNER JOIN student st
ON sc.sid = st.sid) t1,
(SELECT st.SId,st.Sname,st.Sage,st.Ssex,max(sc.score) AS max_score FROM sc
INNER JOIN course c
ON sc.CId = c.CId
INNER JOIN teacher t
ON c.TId = t.TId AND t.Tname = '张三'
INNER JOIN student st
ON sc.SId = st.SId) t2
WHERE t1.score = t2.max_score

#43、查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩

SELECT sc.* FROM sc,
(SELECT sid,cid,score FROM sc
GROUP BY sid
HAVING count(DISTINCT cid) > count(DISTINCT score)) t1
WHERE sc.sid = t1.sid

#44、统计每门课程的学生选修人数(超过 5 人的课程才统计)

SELECT sc.CId,c.Cname,COUNT(sc.SId) AS Scount FROM sc 
INNER JOIN course c 
ON sc.CId = c.CId
GROUP BY(sc.CId)
HAVING Scount > 5

#45、检索至少选修两门课程的学生学号

SELECT SId,COUNT(CId) Cnum from sc GROUP BY(SId)
HAVING Cnum >= 2

#46、查询选修了全部课程的学生信息

SELECT SId,Sname,Sage,Ssex FROM student WHERE SId IN(
SELECT SId FROM sc
GROUP BY(SId)
HAVING COUNT(sc.CId) = (SELECT COUNT(CId) AS Ccount FROM course))

#47、查询本周过生日的学生

SELECT SId,Sname,Sage,Ssex
FROM student 
WHERE WEEKOFYEAR(Sage)=WEEKOFYEAR(current_date())

#48、查询下周过生日的学生

SELECT SId,Sname,Sage,Ssex
FROM student 
WHERE WEEKOFYEAR(Sage)=WEEKOFYEAR(current_date())+1

#49、查询本月过生日的学生

SELECT SId,Sname,Sage,Ssex FROM student 
WHERE MONTH(Sage) = MONTH(current_date())

#50、查询下月过生日的学生

SELECT SId,Sname,Sage,Ssex FROM student 
WHERE MONTH(Sage) = MONTH(current_date())+1
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_55076626/article/details/127164691

智能推荐

mysql无监听程序_ORA-12541:TNS:无监听程序解决方案_卜卜卜布补的博客-程序员秘密

安装Oracle后,用PL/SQLDeveloper连接Oracle时出现ORA-12541:TNS:无监听程序的错误,如下图:发现原来是Oracle的监听没有启动,重启监听后就连接成功了,下面跟大家分享一下如何启动Oracle的监听。1.打开NetConfiguration Assistant2.选择监听程序配置,下一步3.选择重新配置,下一步4.选择监听程序,默认,下一步注:如果你的监听已启动...

计算机二级考试python+C语言通过记录_积极向上的药鼠李的博客-程序员秘密

突然想到可以在这里晒晒成绩,也是记录一种。

linux 编译servlet,Tomcat与Servlet容器_吴人奔越的博客-程序员秘密

导读“Tomcat是一个Servlet容器”,这句话对于2019年的程序员应该是耳熟能详的。今天我们就来一起了解一下在Tomcat中的四个容器:Wrapper、Context、Host、EngineContext顾名思义,Servlet容器就是用来装载存储Servlet的。一个Servlet表示一个运行在服务端的程序(servlet = server + applet)。用户想要使用这种程序,需要...

基于DR模式构建LVS+keepalived高可用群集_cenjeal的博客-程序员秘密

基于DR模式构建LVS+keepalived高可用群集一 DR模式回顾二 keepalived概述与安装2.1 keepalived的热备方式2.2 keepalived的安装与服务控制三 构建LVS+keepalived高可用群集3.1 主调度器的配置3.2 备用调度器配置3.3 web节点服务器配置3.4 NFS存储服务器配置一 DR模式回顾直接路由(Direct Routing):简称 DR 模式,采用半开放式的网络结构,与 TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物

effective C++学习---条款10:令operator=返回一个reference to *this_chenbiyun940419的博客-程序员秘密

/*自定义类一般会重载等号运算符,为可以实现连等操作所以会返回*this的引用*/class Widget{public: Widget&amp; operator=(const Widget&amp; rhs)//=,+=.-=,*=这些类似的操作都可以用 { //返回*this的引用来实现 return *...

用计算机处理文本教学反思,四年级信息技术下册 使用压缩软件教学反思 冀教版..._weixin_39569076的博客-程序员秘密

使用压缩软件教学反思在计算机中保存的文件,有时所占空间较大,怎样解决此类问题呢?文件除了以原格式保存外,还可以通过压缩软件对文件进行处理,减小其所占空间大小后再保存。经过压缩后的文件,可以提高文件在传输时候的效率。本节课首先使学生意识到为什么要对文件进行压缩,压缩后的文件为什么会减小所占的空间,压缩后的文件是不是可以恢复原状呢?让学生认识到压缩文件的意义和使用时的方便之处。一、使用WinRAR压缩...

随便推点

size_t类型的含义_Pin_na的博客-程序员秘密

size_t类型的含义size_t一个基本的无符号整数的C/C++类型,它的全称是size type,就是一种用来记录大小的数据类型,也是sizeof操作符返回的结果类型。size_t是在基于无符号整数memsize类型的C/C++的标准库中定义的。C语言中,此类型位于头文件stddef.h中,而在C++中,则位于cstddef.h中:#ifndef _SIZE_T_DEFINED#i...

Windows 2000缓冲区溢出入门_HappyQQ的博客-程序员秘密

前言 我在互联网上阅读过许多关于缓冲区溢出的文章。其中的绝大多数都是基于*NIX操作系统平台的。后来有幸拜读了ipxodi所著的《Windows系统下的堆栈溢出》(已刊登在绿盟网络安全月刊2000年第三期中),又碰巧看到了Jason先生的《Windows NT Buffer Overflows From Start to Finish》,得益匪浅。在翻译Jason先生的文章时,由于我的机器安装了W

opencv3/c++ Haar特征与Viola-Joines人脸检测_阿卡蒂奥的博客-程序员秘密

在人脸检测中,Viola-Jones人脸检测算法是一个经典的算法,由Viola.P.和 Jones.M在2001年的CVPR上提出。主要通过利用Haar特征结合adaboost算法进行训练,然后建立级连分类器分类。优点是速度快,正脸检测高效;缺点是对侧脸检测不够稳健。Haar特征由Viola和Jones根据Haar小波的方法开发(由Rainer Lienhart改进为Haar-like特征...

datatables pagehelper分页问题_chen_jiangtao的博客-程序员秘密

注意 lengthMenu: [100],, 设置每页显示数据(默认是10)$('#dataTables-receiveMsg').DataTable({ processing: true, serverSide: true, lengthChange: false,//是否允许用户改变表格每页显示的记录数 lengthMenu: [100], // 每页显示数据

归一化_投篮数据归一化处理_投篮不准的程序员不是一个好车手的博客-程序员秘密

为什么要归一化数据归一化后,最优解的寻优过程明显会变得平缓,更容易正确的收敛到最优解。(参考:知乎链接-为什么要对数据归一化)什么时候需要归一化当算法需要使用梯度下降的方法求解最优解(比如逻辑回归)或者该算法计算样本点距离时(比如KNN)须使用归一化处理。如何归一化线性归一化 Min-Max 归一化:比较适用在数值比较集中的情况。实际使用中可以用经验常量值来替代max和min...