是否可以将哈希函数应用于mysql中的整个结果集。
我知道如何在结果集的每一行中哈希值
e.g。 SELECT md5('something')
但是说我有一个像
这样的查询SELECT * FROM `some_table`
结果集包含很多行,是否可以将整个结果集散列为一个值?
我应该清楚我不希望每行都有一个哈希值。我想要整个结果集的一个哈希值。
即。一个人拥有整套。
编辑:使要求更清晰。
答案 0 :(得分:5)
合并CONCAT()
和GROUP_CONCAT()
:
SELECT MD5(GROUP_CONCAT(CONCAT(col1,col2,...))), 1 as g
FROM some_table GROUP BY g;
答案 1 :(得分:1)
您可以将所有列连接在一起,并将结果用于md5()
:
select md5(concat(col1, col2, . . . coln))
from some_table;
答案 2 :(得分:1)
您必须创建所有列的连接字符串,然后应用哈希值。
SELECT MD5(CONCATE(COL1,COL2,COL3...COLn))