Php MYSQL选择,将所有负值设置为零
假设我有一个名为“test”的mysql表,在这个表中我有两列“A”,“B”。 我想得到A-B的结果,但是对于结果为负的每一行,我想将其设置为零 所以我可以写: 选择test.A-test.B作为myResult 但我不知道当myResult为负数时如何将myResult设置为零。 请帮忙Php MYSQL选择,将所有负值设置为零,php,mysql,Php,Mysql,假设我有一个名为“test”的mysql表,在这个表中我有两列“A”,“B”。 我想得到A-B的结果,但是对于结果为负的每一行,我想将其设置为零 所以我可以写: 选择test.A-test.B作为myResult 但我不知道当myResult为负数时如何将myResult设置为零。 请帮忙 谢谢使用IF语句将其设置为负时为零 SELECT a, b, IF(a-b<0,0,a-b) as myResult FROM test; 选择a,b,IF(a-b使用IF语句将其设置为零,当其为负值
谢谢使用
IF
语句将其设置为负时为零
SELECT a, b, IF(a-b<0,0,a-b) as myResult FROM test;
选择a,b,IF(a-b使用IF
语句将其设置为零,当其为负值时
SELECT a, b, IF(a-b<0,0,a-b) as myResult FROM test;
选择a,b,IF(a-b为什么总是把事情弄复杂
对于此类问题,只需使用内置函数即可:
select greatest(0, test.A-test.B) as myResult from test;
从文档中:为什么总是把事情弄得复杂
对于此类问题,只需使用内置函数即可:
select greatest(0, test.A-test.B) as myResult from test;
从文档中:当他的结果为正时,会返回0。只有当结果为负时,他才想要一个0。而且,这不会返回负数吗,这正是他试图避免的?哦,你是对的……我的错误……我的意思是grest()
而不是least()
.THX只要结果为正,就会返回0。只有结果为负时,他才想要0。而且,这不会返回负数吗?这正是他试图避免的。哦,你说得对。我的错误。我的意思是最大()
而不是最小()
。THX