php - MYSQL列类型仅适用于大于或等于0的正数?

标签 php mysql

我想问一下我必须设置我的 MYSQL 列类型,因此值总是 0 或更大,并且永远不会像数字 -15 那样。

我的 PHP 脚本需要它来计算差异,但我不想在我的列中得到小于 0 的结果。

如果你得到我想要的,我希望当它在 20 - 30 情况下计算时在我的 MYSQL 列 0 中设置而不是 -10 。

那么这是否有可能通过 MySQL comumn 类型来完成?

提前致谢!

最佳答案

您可以在列中使用 UNSIGNED 整数类型来仅保存正值,但是当您在 SQL 中进行计算时,我很确定您最终总是会得到负数如果用较小的数字减去较大的数字。即使您以某种方式强制 mySQL 在内部使用无符号 INT,您也不会得到零,而是会得到整数下溢并得到一个巨大的正数。

应用逻辑运算。如果数字小于零,则将其替换为零。

关于php - MYSQL列类型仅适用于大于或等于0的正数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19842797/

相关文章:

PHP:如何将动态变量名与类的 setter 一起使用

mysql - 评论系统查询拉父+x号。 child 评论

php - 如何将具有父子关系的数据库表转换为多维数组

mysql - 根据行有条件地对列中的值求和

php - laravel Eloquent 数组到字符串的转换

php - Windows Server 上的 PDOException

php - 字段列表中的未知列 $cat_name

php - 根据数组值设置复选框选中状态

PHP - 阻止用户访问 php 页面

sql - MySQL 是否具有 SQL Server "indexed views"的等效项?