id type title addtime
1 单选题 题目标题1
3 多选题 题目标题3
8 多选题 题目标题8
9 问答题 题目标题9
12 单选题 题目标题12
15 单选题 题目标题15
27 多选题 题目标题27
28 问答题 题目标题28
...
======================显示出来的是这样的
一、单选题
1.题目标题1
2.题目标题12
3.题目标题15
二、多选题
4.题目标题3
5.题目标题8
6.题目标题27
三、问答题
7.题目标题9
8.题目标题28
====================================
这样该如何写?关键是如何判断每个大的题目类型,然后所有的题目序号还得依次排列出来,我想了一下午也不知道该如何写sql语句好点,一条sql查询可以实现吗?各位帮帮忙吧
11 个解决方案
#1
试试
select * from [table] order by type,id
select * from [table] order by type,id
#2
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
GetInfo("单选题")
GetInfo("多选题")
GetInfo("问答题")
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
GetInfo("单选题")
GetInfo("多选题")
GetInfo("问答题")
#3
加上序号:
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("id")&rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
response.Write("一、单选题<br>")
GetInfo("单选题")
response.Write("二、多选题<br>")
GetInfo("多选题")
response.Write("三、问答题<br>")
GetInfo("问答题")
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("id")&rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
response.Write("一、单选题<br>")
GetInfo("单选题")
response.Write("二、多选题<br>")
GetInfo("多选题")
response.Write("三、问答题<br>")
GetInfo("问答题")
#4
第一个问题就是,如何判断那个大类名,然后所有的题目序号还得依次连续显示出来
我开始也想用函数的,提交参数然后处理那个循环的序号,有没有办法一次性读出来吗?
group by type这样,那个大类名好说可是就是该让它怎么按我上面那个方式显示出来呢
愁死了
我开始也想用函数的,提交参数然后处理那个循环的序号,有没有办法一次性读出来吗?
group by type这样,那个大类名好说可是就是该让它怎么按我上面那个方式显示出来呢
愁死了
#5
nihaopp(大麦皮特),那个id不是连续的序号,我要的是总共循环的那个次数序号
#6
这样可以得到循环序号:
i=0
do while not rs.eof
i=i+1
GetInfo=i&rs("title")&"<br>"
rs.movenext
loop
i=0
do while not rs.eof
i=i+1
GetInfo=i&rs("title")&"<br>"
rs.movenext
loop
#7
那样的话只能每个类别依次显示序号,不是所有的类别加起来依次显示的序号-_0
#8
那就稍微麻烦点,首先要判断山一次的循环次数,然后设置i的初始值
#9
那就用两个镶套循环,一个专门处理序号,另一个负责列标题,你试试看 弄不好我再帮你!
#10
谢谢啦,用函数的话应该可以实现的,只是多了几次查询,我先按这个方法试试看,晚点再来,谢谢nihaopp(大麦皮特)
#11
?
#1
试试
select * from [table] order by type,id
select * from [table] order by type,id
#2
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
GetInfo("单选题")
GetInfo("多选题")
GetInfo("问答题")
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
GetInfo("单选题")
GetInfo("多选题")
GetInfo("问答题")
#3
加上序号:
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("id")&rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
response.Write("一、单选题<br>")
GetInfo("单选题")
response.Write("二、多选题<br>")
GetInfo("多选题")
response.Write("三、问答题<br>")
GetInfo("问答题")
function GetInfo(typeName)
set rs=Server.CreateObject("Adodb.Recordset")
sql="select * from 你的数据库 where type='"&typeName&"'"
rs.open sql,conn,1,1
do while not rs.eof
GetInfo=rs("id")&rs("title")&"<br>"
rs.movenext
loop
rs.close:set rs=nothing
end function
response.Write("一、单选题<br>")
GetInfo("单选题")
response.Write("二、多选题<br>")
GetInfo("多选题")
response.Write("三、问答题<br>")
GetInfo("问答题")
#4
第一个问题就是,如何判断那个大类名,然后所有的题目序号还得依次连续显示出来
我开始也想用函数的,提交参数然后处理那个循环的序号,有没有办法一次性读出来吗?
group by type这样,那个大类名好说可是就是该让它怎么按我上面那个方式显示出来呢
愁死了
我开始也想用函数的,提交参数然后处理那个循环的序号,有没有办法一次性读出来吗?
group by type这样,那个大类名好说可是就是该让它怎么按我上面那个方式显示出来呢
愁死了
#5
nihaopp(大麦皮特),那个id不是连续的序号,我要的是总共循环的那个次数序号
#6
这样可以得到循环序号:
i=0
do while not rs.eof
i=i+1
GetInfo=i&rs("title")&"<br>"
rs.movenext
loop
i=0
do while not rs.eof
i=i+1
GetInfo=i&rs("title")&"<br>"
rs.movenext
loop
#7
那样的话只能每个类别依次显示序号,不是所有的类别加起来依次显示的序号-_0
#8
那就稍微麻烦点,首先要判断山一次的循环次数,然后设置i的初始值
#9
那就用两个镶套循环,一个专门处理序号,另一个负责列标题,你试试看 弄不好我再帮你!
#10
谢谢啦,用函数的话应该可以实现的,只是多了几次查询,我先按这个方法试试看,晚点再来,谢谢nihaopp(大麦皮特)
#11
?