mysql Averaging varchar column [duplicate]

nnsrf1az  于 5个月前  发布在  Mysql
关注(0)|答案(1)|浏览(39)

此问题在此处已有答案

Create an aggregate checksum of a column(4个答案)
22天前关闭
我们在两个不同的DB中有相同的表(表结构:PK(Long),X(VarChar),Version(int)),想要比较这两个表,看看它们是否同步。X -保存字符串,而不是数值。
我们不想一条记录一条记录地比较。我们想到了将Avg(Pk)Avg(X)与其他表Avg(Pk)Avg(X)进行比较-如果两者都匹配-我们假设它是正确的并继续。我知道它会失败的一些场景,因为我们反复这样做-我们相信它会在下次捕获。
但当我试图

select avg(pk), avg(X) from TEST_varchar20

字符串
显示警告
截断不正确的DOUBLE值
并且不给出给予正确的值。
是否可以将Avg()用于Varchar或任何其他解决方案。

7cjasjjr

7cjasjjr1#

我想我得到了答案-仍然在通过它:
从TEST_varchar20中选择CONV(BIT_XOR(CAST(CRC 32(PK)AS UNSIGNED)),10,16)、CONV(BIT_XOR(CAST(CRC 32(X)AS UNSIGNED)),10,16);
来源Create an aggregate checksum of a column

相关问题