可以先把ID放到数组中,然后再根据随机数取得数组中的ID。
int[] array = new int[ds.Tables[0].Rows.Count];
for(int i = 0; i < ds.Table[0].Rows.Count; i ++)
{
array[i] = int.Parse(ds.Table[0].Rows[i]["ID"].ToString());
}
Random rnd=new Random();
string id = "";
for(int i = 0; i < 5; i ++) //这里的5是你要取的多少条记录。
{
ID += array[(int)(rnd.NextDouble()*(array.Length-1))] + ",";
}这就是得到的随机数,格式为1,4,5,8,3
int[] array = new int[ds.Tables[0].Rows.Count];
for(int i = 0; i < ds.Table[0].Rows.Count; i ++)
{
array[i] = int.Parse(ds.Table[0].Rows[i]["ID"].ToString());
}
Random rnd=new Random();
string id = "";
for(int i = 0; i < 5; i ++) //这里的5是你要取的多少条记录。
{
ID += array[(int)(rnd.NextDouble()*(array.Length-1))] + ",";
}这就是得到的随机数,格式为1,4,5,8,3
select top 10 * from question order by newid()//随即抽取10道题目
你后面的newid()是什么意思呢,使数组吗,那怎么还order by呢
还有这样随机抽取出来的几率一样吗
谢谢
谢谢
什么原理呀
我都折腾n天了
就这么一条sql就行啦?
newid()就是产生一个Guid---全球唯一标志(随机的)
接下来应该知道了吧!