MySQL 在MySQL中显示加法后值为零的行?
在MySQL查询中,有时候需要查询加法结果为零的行。例如,我们有一个包含两列数据的表格:A列和B列,现在需要查询所有A列和B列相加结果为零的行。
举个例子,我们有一个名为“test_table”的表格,包含两个列“A”和“B”,数据如下:
| A | B |
|---|---|
| 1 | -1 |
| 2 | -2 |
| 0 | 0 |
| 3 | -3 |
| 4 | -4 |
现在我们需要查询所有A列和B列相加结果为零的行,即可得到第1行、第2行、第4行和第5行。
阅读更多:MySQL 教程
使用WHERE查询语句
我们可以使用WHERE查询语句来查询加法结果为零的行。SQL语句如下:
SELECT * FROM test_table WHERE A + B = 0;
运行上述代码,将返回相应的结果:
| A | B |
|---|---|
| 1 | -1 |
| 2 | -2 |
| 3 | -3 |
| 4 | -4 |
这是因为第1、2、4和5行的A列和B列加和的结果为0。
使用HAVING查询语句
我们也可以使用HAVING查询语句来查询加法结果为零的行。SQL语句如下:
SELECT A, B, SUM(A + B) AS total FROM test_table GROUP BY A, B HAVING total = 0;
运行上述代码,将返回相应的结果:
| A | B | total |
|---|---|---|
| 1 | -1 | 0 |
| 2 | -2 | 0 |
| 3 | -3 | 0 |
| 4 | -4 | 0 |
这是因为根据A和B分组后,对于所有的A列和B列加和的结果为0的分组,将返回分组的A、B和总和列的结果。
总结
我们可以使用WHERE和HAVING查询语句来查询加法结果为零的行。WHERE查询可以通过查询加法结果为0的行来完成,而HAVING查询则需要使用GROUP BY聚合函数来实现。根据具体情况选择合适的查询方式,从而得到我们想要的查询结果。
极客笔记