读书人

用SQL语句怎么实现在一表中随机的选择

发布时间: 2012-03-20 14:01:10 作者: rapoo

用SQL语句如何实现在一表中随机的选择三条纪录到另一个表中
TABLE1与TABLE2是结构相同的两个表.

TABLE1中有如下数据:
ID 类型 内容
01 语文题 语文题1
02 语文题 语文题2
03 语文题 语文题3
04 语文题 语文题4
05 数学题 数学题1
06 数学题 数学题2
07 数学题 数学题3
08 数学题 数学题4
09 英语题 英语题1
10 英语题 英语题2
11 英语题 英语题3
12 英语题 英语题4

有一"随机选择"的按钮,按过后,从TABLE1表中每个类型里随机选择两道题到TABLE2中,如:
按过按钮后,TABLE2中有如下数据:
ID 类型 内容
01 语文题 语文题1
02 语文题 语文题3
03 数学题 数学题3
04 数学题 数学题4
05 英语题 英语题1
06 英语题 英语题2

用SQL语句实现如上功能,应该用什么组件?用ADOQUERY还是用QUERY?
如何实现呢?
谢谢!

[解决办法]
用这句
select * from (select top 3 *,Rnd(id) as ida from test where 类型='语文题' order by Rnd(id)) as a
union all
select * from (select top 3 *,Rnd(id) as idb from test where 类型='数学题' order by Rnd(id)) as b

后面继续需要别的英语题什么的就继续Union all
[解决办法]
同意may_05
累积sql
或者累积用执行动态变量sql

读书人网 >.NET

热点推荐