SQLite-范围内的值
我正在用以下语句更新我的表:SQLite-范围内的值,sqlite,Sqlite,我正在用以下语句更新我的表: UPDATE table SET percentage = percentage + ? WHERE id = ? 传递给数据库的值可能是正的,也可能是负的 有没有办法确保百分比值在0到100之间?只使用SQLite就可以实现它 如果它小于0,我想使它为0;如果超过100,我想让它变成100 我可以通过我的C代码来完成,但最好是通过SQLite来完成 提前感谢。更新表格设置百分比 UPDATE table SET percentage = case when p
UPDATE table SET percentage = percentage + ? WHERE id = ?
传递给数据库的值可能是正的,也可能是负的
有没有办法确保百分比值在0到100之间?只使用SQLite就可以实现它
如果它小于0,我想使它为0;如果超过100,我想让它变成100
我可以通过我的C代码来完成,但最好是通过SQLite来完成
提前感谢。更新表格设置百分比
UPDATE table SET percentage
= case when percentage < 0 then 0
when percentage > 100 then 100
else percentage end
WHERE id = ?;
=百分比小于0时的情况,然后为0
当百分比>100时,则为100
其他百分比结束
其中id=?;
如果不使用where
子句,您将为整个表设置百分比,这大概就是您想要的
然而,大于100或小于零的百分比可能是合法的;我不知道您的问题域。谢谢,我做了以下操作:“更新表集百分比=大小写当(百分比+?)<0然后0当(百分比+?)>100然后100其他(百分比+?)结束在word_id=?”;是否必须为所有3个符号“”绑定相同的值?或者有一种方法可以做一次?你不需要绑定除id之外的任何东西。使用我给你的/as is/语句。或者可以省略where子句,然后使用它。