怎样从表table1中随机选取5条记录显示出来?
想做考试系统,怎样利用随机函数从表table1中随机选取5条记录显示出来?例如显示table1的字段a在5个label上,这究竟该怎么做啊?
[解决办法]
- Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var i:Integer;beginadoquery1.Sql.Text :='select top 5 a from spt_datatype_info order by newid()';adoquery1.Open();for i := 0 to adoquery1.recordcount - 1 dobegin (FindComponent('label'+inttoStr(i+1)) as TLabel).Caption := ADOQuery1.FieldBYname('a').AsString; adoquery1.Next;end;end;
[解决办法]
access在程序中先产生随机5个数
select * from t where id in (…)
MSSQL用newId()
select Top 5 * from t order by newid()