http://404278454.qzone.qq.com/

拓宽思路,几道经典的SQL笔试题目

上一篇 / 下一篇  2008-12-09 14:44:39 / 个人分类:数据库

51Testing软件测试网 w x4\E|&@ Kd5fs

(1)表名:购物信息
sZA \-F ~9Mu0购物人      商品名称     数量51Testing软件测试网9U)w%| n1lH.t
A            甲          251Testing软件测试网 Y8d%g|o$v
B            乙          4
'] T S/z9s0N0F]0C            丙          151Testing软件测试网#k-G,Hh)ZM
A            丁          2
gV-u/W9gphE0B            丙          5
E C&FI j+C0……
1\4p!H!j P nKN3J0其他用户实验的记录大家可自行插入)

5B5\~eu8[o6I051Testing软件测试网dA'h&v3@a

给出所有购入商品为两种或两种以上的购物人记录51Testing软件测试网(B9I(h0M~ndv

&d UMerY)Q0 51Testing软件测试网7H(ixF.pIE

51Testing软件测试网mp|1oW(V

(2)表名:成绩表
.rX#|+s{"J-f o)P0姓名   课程       分数51Testing软件测试网Z%M+ES Tp
张三     语文       8151Testing软件测试网QSzpc*X/r7q+p'Y X
张三     数学       7551Testing软件测试网)v{nqd&i
李四     语文       56
(B0Ks-eg cs0Lz nm0李四     数学       9051Testing软件测试网:R7I4p-a?O~
王五     语文       81
[N(j7yi@0ds4G0王五     数学       100
Vp(X:vd2Q J%`0王五     英语       4951Testing软件测试网&Gh^*cb#k
……51Testing软件测试网}3LO(Jm k)eX&i
(其他用户实验的记录大家可自行插入)

^cg*\5PV2^(A3wl!G0

I _5V$w)`gk7^7u x0给出成绩全部合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格

#q.D+ia@5B051Testing软件测试网\-u m@b3G7K

 51Testing软件测试网ZHAg0Qr(g

51Testing软件测试网6Ub w[Hl~


4}8l kGn&M,O+~pp0(3)表名:商品表51Testing软件测试网8wkCid
名称   产地             进价
u|"gHn0[9`0苹果   烟台  2.551Testing软件测试网.?,f@yjN#m
苹果   云南  1.951Testing软件测试网W2L)g2p8jG u
苹果   四川  351Testing软件测试网8bH ]m[-Ly z c\
西瓜   江西  1.551Testing软件测试网+~`$hA!v1_ H uL0|d
西瓜   北京  2.451Testing软件测试网2M,~^.n/~@2c,O:s z
……51Testing软件测试网#e0@ f S+g
(其他用户实验的记录大家可自行插入)

5hG^e2iCy`9\-KV`051Testing软件测试网 N EO8[P `Yk}

给出平均进价在2元以下的商品名称

&J%ZCg;D051Testing软件测试网R's6C%hEr,CZ

 

#\8@nRQ0

(d9`Gm.Q |mA0(4)表名:高考信息表
GWT1@3gumt0准考证号   科目       成绩
*u6s`j1eo02006001     语文       119
2r*}2b4} u:y }8Z b02006001     数学       10851Testing软件测试网(m ?K _]N d`
2006002     物理       14251Testing软件测试网u?0Q,O M+B
2006001     化学       13651Testing软件测试网.cGM8f|5Ue Y
2006001     物理       127
e!I.p]"Kh0i02006002     数学       14951Testing软件测试网)x/e9U C-R$Ym
2006002     英语       11051Testing软件测试网S2yw#ir|q5d
2006002     语文       10551Testing软件测试网'A4a/V;`R$D xf9l
2006001     英语        9851Testing软件测试网j/w-l;U9c7LQ,T3^
2006002     化学       129
GGnIT,i/dG \{B0……
+I] dO9M.? z^4d0c]&T&p0(其他用户实验的记录大家可自行插入)

3fWjKWNQ_0

z"GX1V,t(xJCs0给出高考总分在600以上的学生准考证号51Testing软件测试网hh`4odi wo

r_&H3oRd+A0 

l'J#tR'M };^n;S%{cA0

P3C6M!^^6bD J0(5)表名:高考信息表51Testing软件测试网'{&A/? V nz&p
准考证号 数学 语文 英语 物理 化学51Testing软件测试网)Bkjm N ]&Q-@H
2006001         108  119  98 127  13651Testing软件测试网2Yl(s.opOj6K%e
2006002         149  105 110 142  129
dY3V Ht-Z0……
:LzGP _-v |9dFi:zl0(其他用户实验的记录大家可自行插入)

Th[ U`*M0

3Hg_\6m&\0给出高考总分在600以上的学生准考证号

#v!P+S7s)Q9_0

4|\"G^9J z%{j W0 

uLzM6}0n0

TAG: 数据库 SQL

晓蕾,you  forerver lucky! 引用 删除 晓蕾LUCKY   /   2008-12-11 09:03:07
谢谢。LZ提供的答案。偶认真拜读了。
请教下大家:删除表的第一条记录SQL语句怎么写?
我写的是delete top 1 from 表名 SQL SERVER里运行了一下执行不了?
mm__ 引用 删除 mm__   /   2008-12-10 22:02:00
1题如果只需查询用户名字用嵌套查询就增加了语句的复杂性。可直接写成这样:

select  购物人 from 购物信息 where group by 购物人 having count(购物人) >= 2);
愚人:喻世 引用 删除 m_r3326   /   2008-12-09 15:29:11
(1)表名:购物信息
购物人      商品名称     数量
A            甲          2
B            乙          4
C            丙          1
A            丁          2
B            丙          5
……
(其他用户实验的记录大家可自行插入)

给出所有购入商品为两种或两种以上的购物人记录

答:select * from 购物信息 where 购物人 in (select 购物人 from 购物信息 group by 购物人 having count(*) >= 2);

(2)表名:成绩表
姓名   课程       分数
张三     语文       81
张三     数学       75
李四     语文       56
李四     数学       90
王五     语文       81
王五     数学       100
王五     英语       49
……
(其他用户实验的记录大家可自行插入)

给出成绩全部合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格

答:select * from 成绩表 where 姓名 not in (select distinct 姓名 from 成绩表 where 分数 < 60)
或者:
select * from 成绩表 where 姓名 in (select 姓名 from 成绩表 group by 姓名 having min(分数) >=60)


(3)表名:商品表
名称   产地             进价
苹果   烟台                2.5
苹果   云南                1.9
苹果   四川                3
西瓜   江西                1.5
西瓜   北京                2.4
……
(其他用户实验的记录大家可自行插入)

给出平均进价在2元以下的商品名称

答:select 名称 from 商品表 group by 名称 having avg(进价) < 2

(4)表名:高考信息表
准考证号   科目       成绩
2006001     语文       119
2006001     数学       108
2006002     物理       142
2006001     化学       136
2006001     物理       127
2006002     数学       149
2006002     英语       110
2006002            语文       105
2006001            英语        98
2006002     化学       129
……
(其他用户实验的记录大家可自行插入)

给出高考总分在600以上的学生准考证号

答:select 准考证号 from 高考信息表 group by 准考证号 having sum(成绩) > 600

(5)表名:高考信息表
准考证号        数学        语文        英语        物理        化学
2006001                108         119         98        127         136
2006002                149         105        110        142         129
……
(其他用户实验的记录大家可自行插入)

给出高考总分在600以上的学生准考证号

答:select 准考证号 from 高考信息表 where (数学+语文+英语+物理+化学) > 600



(四部分)
(一)表名:club

id gender age
67 M      19
68 F      30
69 F      27
70 F      16
71 M      32
……(其余测试数据请自行插入)

查询出该俱乐部里男性会员和女性会员的总数

答:select gender,count(id) from club group by gender

(二)表名:team
ID(number型) Name(varchar2型)
1                  a
2                  b
3                  b
4                  a
5                  c
6                  c
要求:执行一个删除语句,当Name列上有相同时,只保留ID这列上值小的
例如:删除后的结果应如下:
ID(number型) Name(varchar2型)
1                  a
2                  b
5                  c
请写出SQL语句。

delete from team where id not in (select min(id) from team group by name)

(三)表名:student

name course score
张青 语文     72
王华 数学     72
张华 英语     81
张青 物理     67
李立 化学     98
张燕 物理     70
张青 化学     76

查询出“张”姓学生中平均成绩大于75分的学生信息

答:select * from student where name in (select name from student
where name like '张%' group by name having avg(score) > 75)
 

评分:0

我来说两句

日历

« 2024-03-27  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 9624
  • 日志数: 12
  • 建立时间: 2008-11-27
  • 更新时间: 2009-08-21

RSS订阅

Open Toolbar