我导入了一个带有负载数据infile的CSV。一个字段应该包含crc32值作为另外3个的散列。
例如。 LOAD DATA INFILE ....(field1,field2,field3,crc)设置crc = crc32(concat(field1,field2,field3))
到目前为止这种方法有效但是在比较时我可以看到,通常字段包含不同的CRC32值,即使这些值根本没有变化?为什么?我的失败在哪里?
答案 0 :(得分:0)
Yu可以使用计算直接CRC32的虚拟列。不要忘记列之间的冒号。
样品
a b c crc32
123 4 5
1234 NULL 5
如果不在它之间使用冒号,是相同的crc32
CREATE TABLE table1 (
a INT NOT NULL,
b VARCHAR(32),
c INT AS (a mod 10) VIRTUAL,
d VARCHAR(5) AS (CRC32(concat(a,',',b,',',c,)) PERSISTENT);