gpt4 book ai didi

php - MySQL如何在虚拟字段定义中实现条件

转载 作者:行者123 更新时间:2023-11-29 10:46:51 24 4
gpt4 key购买 nike

我正在使用下面的 PHP 函数来计算 PHP 中字符串的校验和。在 32 位和 64 位 php 平台上需要进行异或才能产生相同的值。

我想在 MySQL 选择查询中创建一个具有相同值的虚拟字段。SELECT ABS(CRC32(ui_data)) As checksum FROM user_data 有效,但我不知道如何在 SELECT 语句中实现 if 部分以使其完全兼容 PHP 函数。

10X

function checksum ($orig_id) {
$crc= abs (crc32($orig_id));
if( $crc & 0x80000000){
$crc ^= 0xffffffff;
$crc += 1;
}
return $crc;
}

最佳答案

SELECT IF(@crc & 0x80000000, @crc ^ 0xffffffff, @crc + 1)
FROM (SELECT @crc := ABS(CRC32('your_value'))) v

关于php - MySQL如何在虚拟字段定义中实现条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44412787/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com