请有人告诉我如何显示随机记录? [英] Please Anybody Tell me How to Show Random Records ?
本文介绍了请有人告诉我如何显示随机记录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
先生,我正在使用此代码显示随机图像..但是当我运行此代码时,它不会给我随机记录..但当我删除ORDER BY ImageID()时它工作正常
请有人告诉我如何显示随机记录?
我是新手先生,在此先感谢:)
我的后端是SQL SERVER
和我的代码是:
hi sir , I am Using This Code To show Random Images .. But When I run this code it is not giving me Random Records .. but When I removed ORDER BY ImageID() it is working good
Please Anybody Tell me How to Show Random Records ?
I am Fresher sir ,Thanks In Advance :)
My back end is SQL SERVER
and My Code Is :
protected void BindDataList()
{
con.Open();
//Query to get ImagesName and Description from database
SqlCommand command = new SqlCommand("SELECT TOP 5 * FROM [SlideShowTable1] where (startddate <= @sdate) AND (endddate >=@edate) AND AddType=@Add ORDER BY ImageID() ", con);
command.Parameters.AddWithValue("@sdate", System.DateTime.Now.ToString("M/d/yyyy"));
command.Parameters.AddWithValue("@edate", System.DateTime.Now.ToString("M/d/yyyy"));
command.Parameters.AddWithValue("@Add", "Right_Side_Add");
SqlDataAdapter da = new SqlDataAdapter(command);
DataSet dt = new DataSet();
da.Fill(dt);
dllImages.DataSource = dt;
dllImages.DataBind();
con.Close();
}
推荐答案
试试这个
Try this
SqlCommand command = new SqlCommand("SELECT TOP 5 * FROM [SlideShowTable1] where (startddate <= @sdate) AND (endddate >=@edate) AND AddType=@Add ORDER BY newid() ", con);
您可以尝试使用 RAND() [ ^ ]的功能SQL Server。请参阅类似的解决方案:
如何申请SQL中的随机行? [ ^ ]
从中随机选择行大表 [ ^ ]
- Amit
You can try using RAND()[^] function of SQL Server. See the similar solution:
How to request a random row in SQL?[^]
Selecting Rows Randomly from a Large Table[^]
--Amit
这篇关于请有人告诉我如何显示随机记录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文