sql 语句练习与答案_Mssql数据库教程
缂傚倸鍊搁崐椋庣矆娴h娲晝閸屾氨鍔电紓浣插亾闁硅京顒CMS闂備浇宕甸崰鎰版偡閵夈儙娑樷攽鐎c劉鍋撻崒鐐查唶闁哄洨鍋為悗顒€鈹戦悙鍙夘棡闁搞劎鍠栧濠氭晸閿燂拷婵犵數鍋為崹璺侯潖鐟欏嫮鐝堕柛鈩冪☉閻撴﹢鏌″搴″箺闁抽攱甯¢弻銊╂偆閸屾稑顏� 缂傚倸鍊风粈渚€藝闁秴绐楅柟閭﹀墾閼板潡鏌涢妷顔煎缂佲偓婢舵劖鐓冮柕澶堝妽閻濐亪鏌e┑鎾村 闂傚倸鍊风欢锟犲磻閸曨垁鍥ㄦ綇閳哄啰顦繝銏f硾閺堫剟宕楀⿰鍫熺厸闁搞儯鍔嶉惃鎴︽⒒婢跺﹦效闁哄被鍊栧ḿ蹇涘Ω閿旂粯顥涚紓鍌欑劍閸炲骞忛敓锟� 闂傚倷绀侀幖顐﹀疮閻楀牊鍙忛柟缁㈠枛濡炰粙鏌″搴′簽闁告纰嶇换娑㈠幢濡闉嶅┑顕嗙稻閸旀鍩€椤掑喚娼愰柟顔肩埣瀹曟洟鏌嗗鍛厬闂佽法鍣﹂幏锟�,闂傚倷娴囬惃顐﹀礋椤愩垹袘闂佽姘﹂~澶嬬箾婵犲偆鍤曢柛顐f礀缁€鍐┿亜閺傚灝鎮戞い蹇曞枑缁绘盯骞嬮悙鏉戠殤闂佺ǹ顑嗛幑鍥ь潖閸濆嫧鏋庨柟顖嗗嫮浜梻浣告啞閻熴儳鎹㈠Ο渚殨濠电姵纰嶉弲鎼佹煥閻曞倹瀚�!
推荐:深入C++ string.find()函数的用法总结
本篇文章是对C++中string.find()函数的用法进行了详细的总结与分析,需要的朋友参考下
S#学号,sname姓名,difdate日期,班级grade
2课程表 course
c#课程号 ,名字cname
3成绩单score
s#学号 c#课程号 成绩score
--1统计每个班级有多少人
select grade,count(sname) from ze_student group by grade;
--2、2007级的各学生的平均成绩 没有成绩的为0;
select a.sname,(select avg(nvl(b.score,0)) from ze_score b where b.s#=a.s#) from ze_student a where grade=2007;
--3 每科 平均成绩和最高成绩 最低成绩 2007级 保留2位小数点 四舍五入
select b.c#,avg(b.score),max(b.score),min(nvl(b.score,0)) from ze_student a,ze_score b where b.s# = a.s# and a.grade =2007 group by b.c#;
--4 给2007级 数学加5分
update ze_score
set score=nvl(score,0)+5
where s# in (select s# from ze_student where grade=2007) and c# =(select c# from ze_course where cname='数学');
--5 90分以上的为优秀 90到85为良好,60分 不及格 各人平均成绩
select s#, c,
case
when c>=90 then '优秀'
when c<90 and c>=60 then '及格'
else '不及格' end as jige
from (select s#,avg(nvl(score,0)) as c from ze_score group by s# ) order by jige desc;
--6 求同月出生的 人数
select to_char(difdate,'mm') as 月份,count(s#) as 出生人数 from ze_student group by to_char(difdate,'mm');
--7 各科的及格率和平均成绩 截取 保留2位
--及格率
select c#,avg(nvl(score,0))as 平均成绩,sum(nvl(score,0))as 总成绩, count(s#) as 各科人数,
trunc(sum(
case when nvl(score,0)>60 then '1'
else '0' end)/count(s#),2) as 及格率
from ze_score group by c#;
--每人的及格率
select s#, avg(nvl(score,0))as 平均成绩,sum(nvl(score,0))as 总成绩, count(c#) as 总科目,
sum(
case when nvl(score,0)>60 then 1
else 0 end
)/count(c#) as 及格率
from ze_score group by s#;
--8删除 姓名是张三 的大学语文 成绩
select * from ze_score where s# in (select s# from ze_student where sname in '张三') and c#=(select c# from ze_course where cname ='大学语文');
--9 将数学替换成高等数学
update ze_course set cname='高等数学'where cname like '%数学%';
--10 格式化 ,显示 将学号修改成S开头 不足12位补0;
--查询
select concat('S',lpad(s#,11,0)) as s# from ze_score ;
select concat('S',lpad(s#,11,0)) as s# from ze_student ;
--格式化
update ze_score set s#= concat('S',lpad(s#,9,0));
update ze_student set s#= concat('S',lpad(s#,9,0));
四个足球队
select a.name,b.name from qiu a,qiu b where a.name<b.name;
commit
rollback
服务器类型
服务器协议
全局数据库名称
服务器IP地址
服务器端口号
用户名和密码
分享:SQL Server中删除重复数据的几个方法
数据库的使用过程中由于程序方面的问题有时候会碰到重复数据,重复数据导致了数据库部分设置不能正确设置

相关Mssql数据库教程:
- 深入C++ string.find()函数的用法总结
- SQL Server中删除重复数据的几个方法
- sql删除重复数据的详细方法
- SQL SERVER 2000安装教程图文详解
- 使用sql server management studio 2008 无法查看数据库,提示 无法为该请求检索数据 错误916解决方法
- SQLServer日志清空语句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸载方法(其他版本类似)
- sql server 2008 不允许保存更改,您所做的更改要求删除并重新创建以下表
- SQL Server 2008 清空删除日志文件(瞬间日志变几M)
- Win7系统安装MySQL5.5.21图解教程
- 将DataTable作为存储过程参数的用法实例详解
- 获取SQL Server表字段的各种属性实例代码
- 相关链接:
- 教程说明:
Mssql数据库教程-sql 语句练习与答案
。