博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java crc32
阅读量:4537 次
发布时间:2019-06-08

本文共 615 字,大约阅读时间需要 2 分钟。

 
原文链接:http://blog.csdn.net/tbkken/article/details/8210952
在优化关系数据库的关联查询的时候,ON的字段选择为数值型,必须是会比字符型的数据快很多的,那么如何将一个字符型的数据,唯一性地转为数值型呢?
 
一般我们会采用CRC32函数进行这个转换,CRC32会把字符串,生成一个long长整形的唯一性ID(虽然科学证明不绝对唯一,但是还是可用的)。
 
下面提供Java、Python以及MySQL的转换方法:
 
在MySQL数据库中,可以使用CRC32直接对字符串进行编码:
 
SELECT CRC32('hello-world')
 
2983461467
 
在Java中,也是使用CRC32类,进行字符串编码:
 
CRC32 crc32 = new CRC32();
crc32.update("hello-world".getBytes());
System.out.println(crc32.getValue());
 
2983461467
 
经过测试,和MySQL返回的值一致。
 
最后是Python,使用binascii包的crc32方法:
 
import binascii
print(binascii.crc32(b"hello world"))
 
222957957

 

转载于:https://www.cnblogs.com/wangchunlan1299/p/8431873.html

你可能感兴趣的文章
android的listview中getview()的问题
查看>>
switch语句
查看>>
ie6-ie8中不支持opacity透明度的解决方法
查看>>
视图事件穿透
查看>>
HDU 5428 分解质因数
查看>>
用Jekyll搭建的Github Pages个人博客实践2
查看>>
masonry
查看>>
ContentProvider初步-------------------笔记
查看>>
asp.net网站中退出系统后通过后退键重新进入系统的解决方法
查看>>
Software Configure
查看>>
正则表达式(一)
查看>>
C# DEV 右键出现菜单
查看>>
数据字典到SQL语句的转换(使用word与VBA)
查看>>
属性赋值-@PropertySource加载外部配置文件
查看>>
1万台币等于多少人民币(2014年04月22日)
查看>>
无法安装64位office,因为您的PC上有32位
查看>>
java实现发送邮件功能
查看>>
Ubuntu 18.04 启用 rc.local 设置开机启动
查看>>
Single Number
查看>>
PostgreSQL之时间戳自动更新
查看>>