C# 我想从数据库中随机选择一个图像,并在aspx页面上查看它
我有一个包含图像的数据库,现在我想从数据库中随机选择一个图像,并在aspx页面上查看它 我知道如何根据id从数据库中读取图像C# 我想从数据库中随机选择一个图像,并在aspx页面上查看它,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我有一个包含图像的数据库,现在我想从数据库中随机选择一个图像,并在aspx页面上查看它 我知道如何根据id从数据库中读取图像 我正在使用MS Sql和C编程。您只需从图像表中选择一条随机记录,如下所示: SELECT TOP 1 ... FROM Images ORDER BY NEWID() 任何数据库都有选择随机记录的方法,请查看此处以查找您的数据库: 使用MySQL随机选择一行: 使用PostgreSQL随机选择一行: 使用Microsoft SQL Server随机选择一行: 使用IB
我正在使用MS Sql和C编程。您只需从图像表中选择一条随机记录,如下所示:
SELECT TOP 1 ... FROM Images
ORDER BY NEWID()
任何数据库都有选择随机记录的方法,请查看此处以查找您的数据库: 使用MySQL随机选择一行: 使用PostgreSQL随机选择一行: 使用Microsoft SQL Server随机选择一行: 使用IBM DB2随机选择一行 使用Oracle选择随机记录:
您需要一种通过HTTP向最终用户提供映像的方法。这可以是几种方法中的任意一种,例如创建自己的http处理程序,将图像名称作为查询字符串参数传递给aspx页面,然后将图像发送回而不是html
将告诉您如何为图像提供服务,我将使用sql来选择随机图像,以获得其他答案。您可以获得最大图像id,并在生成随机数后使用此值作为最大值,如本例所示:
int maxIdValue = MaxIdFromDatabase();
int randomId = new Random().Next(maxIdValue);
Image image = GetImage(randomId);
能帮忙吗?你能更具体地说一下你需要什么帮助吗?
SELECT column FROM table
ORDER BY RANDOM()
LIMIT 1
SELECT TOP 1 column FROM table
ORDER BY NEWID()
SELECT column, RAND() as IDX
FROM table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
SELECT column FROM
( SELECT column FROM table
ORDER BY dbms_random.value )
WHERE rownum = 1
int maxIdValue = MaxIdFromDatabase();
int randomId = new Random().Next(maxIdValue);
Image image = GetImage(randomId);