我正在尝试练习编程,并且决定在登录页面上添加一些效果。由于我正在经营一家在线商店,因此我希望在登录页面的某个位置显示一些随机产品,这些产品每隔几秒钟就会更改一次。
现在,我陷入了如何提取将在 ajax 调用后显示的单个产品的困境。我正在考虑获取数据库中的最小和最大产品 ID,然后随机生成一个介于最小和最大产品 ID 之间的数字,然后获取具有该 ID 的产品,但我想如果随机生成的 ID 与任何产品都不匹配怎么办?产品。它只会在登录页面上显示任何内容几秒钟,这是我不希望发生的情况。
有没有办法让我获得一个肯定会出现在产品表中的 ID?对你的帮助表示感谢。提前致谢。
附注:
我正在使用 MySQL 和 PHP。
更新:
我遇到了一个页面,说明我可以使用:
SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1;
这会是一个好的解决方案吗?
最佳答案
如果你使用的是MSSql,你可以通过newId()函数来随机获取一行数据。您仍然需要服务器端的服务/页面来为您运行此代码。
select top 1 productName, sku
from products
order by newid()
对于 MySql 这就足够了
SELECT productName, sku
FROM products
ORDER BY Rand()
LIMIT 1
关于javascript - 动态显示数据库中的单个产品的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7605630/