我有一个问题,我想随机但连续地订购一组物品。
例如给定集合:Apples Bananas Grapes Limes Pineapples
我可能想要Limes Pineapples Apples Grapes Bananas
或Grapes Bananas Pineapples Apples Limes
我不在乎顺序是什么,只要它不是字母/长度等明显的东西即可。我宁愿不必存储该顺序,并且希望它可以重复,所以我想一个简单的算法。
例如,如果这些是数字而不是字符串,请说10000 12345 12444 17654 199999
我可以对它们进行173(或其他任何形式)修改,并以此排序:
17654 199999 12345 10000 12444
我该如何处理utf8字符串?最好有一个可以使用任意长度的解决方案,但是在我的情况下,它们的范围可以从2个字符到63个字符。
我可以遍历字符串并汇总所有字符的unicode代码,但是我觉得可能有一种更狡猾/更简单的方法。理想情况下,我可以相对简洁的方式将其放入MySQL查询中。
谢谢!
答案 0 :(得分:3)
计算字符串的哈希值并以此排序:
SELECT string
FROM yourTable
ORDER BY MD5(string);