2013-02-08 44 views
0

我在mysql中有一个字符串,我想随机化,这样每次运行查询时,我都会得到不同的结果。mysql中的随机字符串

样本串

$str = '4_127','2_84','2_85';

所以,我将它传递给ORDER BY子句随机化的结果。

SELECT `MY_SEARCH_PARAMS` FROM `mytable` WHERE `MY_WHERE_CONDTIONS` ORDER BY 
FIELD(CONCAT(property_id,"_",catalog_id), '4_127','2_84','2_85'), `id` ASC; 

我需要一种方法,以便每次更改字符串内容的顺序。

谢谢。

+0

是'$海峡= '4_127', '2_84', '2_85';'实际的字符串或者你有树的字符串这是'4_127','2_84'和'2_85'? – 2013-02-08 14:00:51

+0

这是实际的字符串。 – 2013-02-08 14:02:23

+0

你的表中有''4_127','2_84','2_85''的值吗? – jcho360 2013-02-08 14:12:20

回答

1

真的吗?这是非常混乱的行为。你想达到什么目的?

不过,即使你使用这样的代码,它至少更好的随机化他们在PHP脚本(我假设你使用的是PHP)。

$str_array = array('4_127','2_84','2_85'); 
shuffle($str_array); 
$str = implode(", ",$str_array) 
+0

令人困惑的是,当然。但是这就是项目如何改变:)是的,如果没有别的,我可能会在PHP中完成。 – 2013-02-08 14:01:38

+0

为什么你想要由MySQL来处理? – Lothar 2013-02-08 14:04:13

+0

有很多其他领域/条件取决于它。 – 2013-02-08 14:06:20