【问题标题】:mysql minimum intmysql最小整数
【发布时间】:2012-06-13 08:57:35
【问题描述】:

我有这个问题

UPDATE table SET this = this-20 WHERE this >= 0

我不希望 this 字段低于 0。我是否可以在此查询中添加一些内容以确保这一点,而无需运行另一个查询?

例如,如果这是 18,那么它将被设置为 -2

(使用 MYSQL)

【问题讨论】:

    标签: mysql int minimum


    【解决方案1】:

    你可以利用Greatest功能:

    UPDATE table SET this = greatest(0,this-20) WHERE this >= 0
    

    考虑到this - 200,基本上将this的值设置为更大的值。

    【讨论】:

      【解决方案2】:

      将您的条件更改为WHERE (this - 20) >= 0。 并创建一个检查约束:ALTER TABLE [table] ADD CONSTRAINT ThisGreaterThanZero CHECK (this >= 0)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-10-18
        • 1970-01-01
        • 1970-01-01
        • 2020-06-20
        • 1970-01-01
        • 1970-01-01
        • 2012-04-09
        相关资源
        最近更新 更多