gpt4 book ai didi

mysql - 两个整数列之间的差异无法按预期工作

转载 作者:行者123 更新时间:2023-11-29 01:25:22 25 4
gpt4 key购买 nike

我正在运行此查询:

SELECT id,like - dislike as result
FROM mytable

其中喜欢和不喜欢的列是无符号整数。如果列dislike大于像mysql返回的数字,如18446744073709551596,那么mysql似乎将其视为无符号并且不能返回负数,而是从某种MAX_UNSIGNED_INT继续计算。怎样才能得到正确的结果

最佳答案

尝试转换两个值(或者可能只转换其中的值)

SELECT id, convert(like, SIGNED ) - convert(dislike, SIGNED ) as result
FROM mytable

或仅结果

SELECT id, convert(like - dislike, SIGNED ) as result
FROM mytable

第一种方式可能会导致类型溢出!第二种方法更好,但我不确定它是否适用于 mysql。

关于mysql - 两个整数列之间的差异无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2311676/

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