【发布时间】:2017-02-11 03:41:09
【问题描述】:
我使用 PHP 和 Mysql。我有一张看起来像这样的表:
id title
----------
1 my title
2 another title
3 The last title
现在我想随机选择它们。
- 由于查询大小,我需要使用 LIMIT。
- 类随机顺序每次都应始终是相同的随机顺序。
示例结果,每次
3 The last title
1 my title
2 another title
再运行一次查询:
3 The last title
1 my title
2 another title
出现相同的随机结果。
可能的解决方案
- 添加一个实随机数,存储为插入生成的新列。
- 一些神奇的 SELECT 查询。
- 还有别的吗?
为什么我想要这个是我插入产品,首先从一个站点,然后从另一个站点。结果,我想将它们混合在一起。
【问题讨论】:
-
困惑。所以你想要 123、312、231、321 等?
-
"类似随机的顺序每次都应该是相同的随机顺序" 这不是真正的随机,是吗?
-
@PraveenKumar 不。如果我第一次按 312 顺序获取它们,那么我将始终按该顺序获取它们。它应该是随机的,但它应该是一个静态的混合顺序。
-
你的意思是这样的?
select * from <tablename> where <cond> ORDER BY ONLY_RAND_THE_FIRST_TIME_AND_REMEMBER_WHAT_YOU_DID_FOR_EVERMORE() limit <startlimit>, <end limit> -
那么答案是如果你能写出其中之一,请告诉我们,我们都会帮助你测试它