mirror of
https://github.com/go-admin-team/go-admin.git
synced 2026-09-21 18:20:50 +00:00
加入字符串字段分表算法,供分表业务参考
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
package table
|
||||
|
||||
import (
|
||||
"hash/crc32"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
// Crc32Hash 用于32张分表
|
||||
func Crc32Hash(src string) string {
|
||||
sum := crc32.ChecksumIEEE([]byte(src)) % 32
|
||||
return strconv.Itoa(int(sum))
|
||||
}
|
||||
|
||||
// Crc16Hash 用于32张分表
|
||||
func Crc16Hash(src string) string {
|
||||
sum := crc32.ChecksumIEEE([]byte(src)) % 16
|
||||
return strconv.Itoa(int(sum))
|
||||
}
|
||||
|
||||
// Crc8Hash 用于32张分表
|
||||
func Crc8Hash(src string) string {
|
||||
sum := crc32.ChecksumIEEE([]byte(src)) % 8
|
||||
return strconv.Itoa(int(sum))
|
||||
}
|
||||
Reference in New Issue
Block a user