gpt4 book ai didi

php - mysql计算两个数的区别

转载 作者:行者123 更新时间:2023-11-29 03:50:40 24 4
gpt4 key购买 nike

我有一个博客。我写了简单的投票系统。我的想法可能是错误的。我有一张这样的 table

id 标题文章 TotalVotes VoteSum

当有人对文章投赞成票时,TotelVotes 得到一分,如果有人对文章投反对票,则 VoteSum 得到 1 分

当我显示文章的投票时,我会这样做

<?php
$Vote = $ROW['TotelVotes']-$ROW['VoteSum'];
?>

它工作得很好,但在我的首页上我想显示热门文章所以我做了这个 mysql 查询

SELECT TotalVotes-VoteSum AS diff FROM `articles` ORDER BY `diff`  DESC

当我这样做时,我收到这样的数字 18446744073709551615 例如,当 TotalVotes 小于 VoteSum 时会发生这种情况

数据类型是 INT UNSIGNED

我做错了什么?请你帮助我好吗?谢谢。

最佳答案

你可以使用IF

SELECT IF(TotalVotes >= VoteSum, TotalVotes-VoteSum, VoteSum-TotalVotes) AS diff 
FROM `articles`
ORDER BY `diff` DESC

更新

如果您想获得负值,请将这些列设为 INT SIGNED,这样您就可以获得负值。并直接运行您自己的查询,

SELECT TotalVotes-VoteSum AS diff 
FROM `articles`
ORDER BY `diff` DESC

关于php - mysql计算两个数的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14504463/

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