sql server 查询问题

来源:百度知道 编辑:UC知道 时间:2024/05/06 09:29:20
1、SC表中有学号,课程号,成绩三列,
查询那些学生合选了一门课程,列出学号和课程号
2、STUDENT表中有学号,姓名,性别,年龄,所在系5列
查询那些学生年龄相同,列出姓名和年龄
sillan:
你只是简单的排序,要求应该是不显示只有一个人选的课程,不显示没有同龄人的人的年龄

那么我修改一下我的答案,但除了以上你所列出的学生表STUDENT和选课表SC外,应该还有一个课程信息表表COURSE,它包含课程号、课程名、学分、被选次数四列
第一个问题的答案这样改一下——
select SC.学号,SC.课程号
from SC,COURSE
where SC.课程号=COURSE.课程号 and COURSE.被选次数>1
即在课程表和选课表中找出被选次数大于1(一定有1个以上的学生选)的课程,再在选课表中找到与之对应的课程,列出学号和课程号
我没有具体试验,你试一下能否行得通吧

第二个问题没做过,想个比较笨的办法你试试——
<table>
<tr><td>姓名</td>
<td>年龄</td></tr>
<%
for i=1 to 100
select 姓名,年龄 from student where 年龄='"&i&"'
set rs=Conn.execute(sql)
if rs.eof then
response.write"" '没有该年龄的人则写空
elseif not rs.eof then
do while not rs.eof
%>
<tr><td><%=rs("姓名")%></td>
<td><%=rs("年龄")%></td></tr> '为每个符合该年龄的学生开辟一行记录姓名和年龄
<%
loop
end if
next
%>
</table>
这样似乎能列出1到100岁人的姓名和年龄,赶时间写的,有错请纠正呵呵

1:selsct 学号,课程号 from sc where 课程