首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

ACCESS取随机记录有关问题

2012-04-22 
ACCESS取随机记录问题procedure TForm1.Button1Click(Sender: TObject)beginRandomizeadoquery1.SQL.Tex

ACCESS取随机记录问题
procedure TForm1.Button1Click(Sender: TObject);
begin
Randomize;
adoquery1.SQL.Text:='select top 5 * from czsgz order by Rnd(-ID*' + IntToStr(Random(100)) + ')';
adoquery1.Open;
end;

我发现这样从ACCESS取随机记录,
如果第一条记录为某个ID,第二条记录肯定为另一个ID.
如2351\997\8133\9892\11651,不断的按button1,上面的五条记录很容易出现,ACCESS取随机记录怎样的效率高些啊?
像MSSQL的select top 5 * from czsgz order by newid()就方便多了

[解决办法]
order by sin((id + rnd(id)*3141.5926)/1000)

热点排行