2013-02-08 43 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